- 博客(68)
- 资源 (12)
- 收藏
- 关注
原创 编写C函数,实现双向链表删除一个节点P。
编写C函数,实现双向链表删除一个节点P。//删除操作Status ListDelete_Dul(DuLinkList &L,int i,ElemType &e){ if(!(p=GetElemP_DuL(L,i))) return Error; e=p->data; p->prior->next=p->next; ...
2018-09-07 11:38:21
4564
原创 有一浮点型数组A,用C语言写一函数实现对浮点数组A进行 降序排序,并输出结果,要求要以数组A作为函数的入口.(建议用冒 泡排序法)
有一浮点型数组A,用C语言写一函数实现对浮点数组A进行降序排序,并输出结果,要求要以数组A作为函数的入口.(建议用冒泡排序法)void BubbleSort(double arrr[],int n){ for(int i-0;i<n;i++) { for(int j=0;j<n+1-i;j++) { ...
2018-09-07 11:01:39
2823
原创 编写程序,判断链表中是否有环?
使用两个指针来遍历单向链表,第一个指针P1,每次走一步。第二个指针P2每次走两步;当P2指针追上P1的时候就说明链表中有环路了。int testLinkRing(Link *head){ Link *t1=head; Link *t2=head; while(t1->next&&t2->next) { t1=t1-...
2018-09-07 10:43:00
644
原创 请编写一个C函数,该函数在一个字符串中找到可能的最长的字符串,该字符串是由同一个字符组成的。
int ChildString(char* p){ char *q=p; int stringlen=0,len=0,maxlen=0; while(*q!='\0') { stringlen++; q++; } int i=0; int j=0; while(i<stringlen) ...
2018-09-07 10:12:52
4175
5
原创 实现strcmp函数
int mystrcmp(const char* str1,const char* str2){ int temp=0; while(!(temp=*(unsigned char*)str1-*(unsigned char*)str2)&&*str1) { str1++; str2++; } if(temp...
2018-09-06 20:42:42
493
原创 编写一个C函数,该函数将给定的一个整数转换为字符串。
void intToChar(int num, char *pval){ char str[100]; int i,j; int val0=0; int val1=0; val0=num; for (i=0; i<100;i++) { val1=val0%10; val0=val0/10; ...
2018-09-06 17:12:34
5991
1
原创 请编写一个C函数,该函数将给定的一个字符串转换为整数。
int Invert(char *str){ int num=0; while(*str!='\0') { int digital=*str-48; num=num*10+digital; str=str+1; } return num;}
2018-09-06 16:50:33
3471
原创 App测试流程,测试前途
1. App测试流程流程图1.2 测试周期测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间。正式测试前先向主管确认项目排期。1.3测试资源测试任务开始前,检查各项测试资源。--产品功能需求文档;--产品原型图;--产品效果图;--行为统计分析定义文档;--测试设备(IOS Andr...
2018-07-17 19:29:40
8705
5
原创 C++面试总结
第一部分:简答题1. 一下C++中static_cast 和 dynamic_cast 的区别。答:static_cast 用于有比较明确定义的变换,包括不需要强制转换的变换。 dynamic_cast 适用于类型安全的向下转换,常用在继承中的父类指针向子类指针的转换。若转换成功则返回改类型的指针,若失败,则返回NULL。 Struct 和class 的区别。答:str...
2018-07-17 19:27:44
1657
原创 C++面向对象程序设计概念全总结(六)--最全的概念总结
1、对象和类概念对象:任何一个对象都应该具备两个要素:属性、行为。在C++中每个对象都有数据(体现了‘属性’)和函数(用来对数据进行操作,以实现某些功能)两部分组成。类:具有共性的实体的抽象。类是对象的抽象,不占有内存。对象是类的特例,即类的具体表现形式,占有存储空间。C++使用class关键字用于定义类,和struct关键字的用法相同。只不过class关键字默认的类型为private.私有成员只...
2018-07-15 21:49:41
15454
原创 C++基于对象的程序设计基本概念总结(六)-多态性
20 多态性概念:指相同的对象收到不同的消息或者不同的对象收到相同的消息时产生的不同的实现动作。C++支持两种多态:编译时多态(静态)、运行时多态(动态)。静态多态是通过函数的重载来实现的(运算符重载实际上也属于函数的重载)。要求在程序编译的时候就知道调用函数的全部信息。静态多态性的函数调用速度快、效率高、但是缺乏灵活性,在程序运行前就决定了执行的函数与方法。动态多态性是程序运行过程中才动态地确定...
2018-07-12 20:07:45
449
原创 C++基于对象的程序设计基本概念总结(五)-继承
19.继承(1) 类与类之间的关系has-A,包含关系,用以描述一个类由多个“部件类”构成,实现has-A关系用类的成员属性表示,即一个类的成员属性是另一个已经定义好的类。use-A,一个类使用另一个类,通过类之间的成员函数相互联系,定义友元或者通过传递参数的方式来实现。is-A,即继承关系,关系具有传递性。(2) 继承的相关概念万事万物皆有继承这个现象,所谓的继承就是一个类继承了另一个类的属性和...
2018-07-11 14:55:41
415
原创 C++基于对象的程序设计基本概念总结(四)-运算符的重载
10、 运算符重载(1)“<<”与“>>”分别是流插入运算符与流提取运算符,在使用的时候需要在本文件的模块中包含头文件stream,还用过包含“using namespace std;”。(2)运算符重载是定义一个重载运算符的函数,使指定的运算符不仅能实现原有的功能,而且也实现在函数中指定的新的功能。在使用被重载的运算符,系统会自动调用该函数,以实现相应的功能。运算符重载是...
2018-07-10 15:04:23
353
原创 C++基于对象的程序设计基本概念总结(三)
12. 对象的动态建立与释放在C语言中是利用库函数malloc和free来分配和撤销内存空间的。C++提供了简便而功能较强的运算符new和delete来取代malloc和free函数。注意: new和delete是运算符,不是函数,因此执行效率高。用new分配数组空间时不能指定初值。如果由于内存不足等原因而无法正常分配空间,则new会返回一个空指针NULL(0值),用户可以根据该指针的值判断分配空...
2018-07-08 19:14:35
556
原创 C++面向对象的程序设计基本概念总结(二)
4.构造函数 构造函数主要用于在定义对象时,完成对象的初始化. 每一个类都应该有一个构造函数,如果用户没有定义构造函数,编译器会自动生成构造函数(参数和函数体为空的构造函数),如果用户自定义了构造函数,那么编译器不再提供默认的构造函数。 特性:1.构造函数的名称必须要与当前类的名称相同。 2.构造函数仅在定义对象时由系统调用,其他时间无法调用。而且只执行一次。 ...
2018-07-07 23:01:55
599
原创 C++面向对象的程序设计的相关概念(一)
1、对象和类概念对象:任何一个对象都应该具备两个要素:属性、行为。在C++中每个对象都有数据(体现了‘属性’)和函数(用来对数据进行操作,以实现某些功能)两部分组成。类:具有共性的实体的抽象。类是对象的抽象,不占有内存。对象是类的特例,即类的具体表现形式,占有存储空间。C++使用class关键字用于定义类,和struct关键字的用法相同。只不过class关键字默认的类型为private 2、面向对...
2018-07-07 11:55:49
1206
原创 python 使程序输出不是科学计数法的形式,而是浮点型的数据
python 使程序输出不是科学计数法的形式,而是浮点型的数据输出。在程序的开头加上两句话:import numpy as npnp.set_printoptions(suppress=True)
2018-07-06 11:34:57
10602
1
原创 C++变量的引用
变量的引用:是为一个变量起了一个别名。 int a; int &b=a;1.声明变量b只是一个引用,不需要另外的开辟内存单元存放b的值,b与a占内存中的同一个存储单元,具有相同的地址。2.必须向定义一个变量,后声明对该变量的引用。对引用只有声明,没有定义。3.在声明一个引用的时候必须同时进行初始化,即声明它代表的是哪一个变量。4.在声明一个引用后,不可以再使之成为另一个变量的引...
2018-07-05 20:13:03
413
原创 C++使用指针的优点
使用指针可以带来如下的好处:(1)可以提高程序的编译效率和执行速度,使程序更加简洁。(2)通过指针被调用函数可以向调用函数处返回除正常的返回值之外的其他数据,从而实现两者间的双向通信。(3)利用指针可以实现动态内存分配。(4)指针还用于表示和实现各种复杂的数据结构,从而为编写出更加高质量的程序奠定基础。(5)利用指针可以直接操纵内存地址,从而可以完成和汇编语言类似的工作。(6)跟容易实现函数的编写...
2018-07-05 20:03:20
11481
原创 python 主成分分析PCA
机器学习,PCA,通过方差的百分比来计算将数据降到多少维是比较合适的.'''通过方差的百分比来计算将数据降到多少维是比较合适的,
2018-06-25 22:46:05
1412
原创 python 归一化数据
归一化数据输入为矩阵,对每一列的数据进行归一化。#归一化数据def autoNorm(dataset): minVals=dataset.min(0)#列中最小值 maxVals=dataset.max(0)#列中的最大值 ranges=maxVals-minVals #normDataSet=zeros(shape(dataset))#创建与样本特征矩阵同大小的...
2018-06-25 22:42:44
1917
2
原创 python 将unicode转换为str的类型
python 将unicode转换为str的类型python程序运行输出 u'\u810f\u4e71' 。类型为:unicodes_unicode = u'\u810f\u4e71' s_str = s_unicode.encode('unicode-escape').decode('string_escape') ...
2018-06-13 16:28:34
2262
原创 linux下使用脚本远程登录设备
linux下使用脚本远程登录设备:使用模块paramiko,远程登录的设备名字为username,设备的ip为ip,设备的密码为password.1.使用类进行初始化class RemoteMonitor: ip = '' port = 22 username = '' password = '' def __init__(self,ip,username,...
2018-06-13 16:19:17
819
原创 linux远程登录设备后下载文件
linux远程登录设备后下载文件import subprocessimport osimport timeimport loggingimport reimport paramikoimport stringimport sysimport datetimefrom ftplib import FTPimport getpassfrom scp import SCPClie...
2018-06-06 12:48:08
990
原创 python 即时标记
文本格式:A short history of the companyWorld Wide Spam was started in the summer of 2000. The business concept was to ride the dot-com wave and make money both throughbulk email and by selling canned meat...
2018-06-04 22:16:19
1739
原创 linux系统下运用python脚本远程登录设备
python远程登录import subprocessimport osimport timeimport loggingimport reimport paramikoimport stringimport sysimport datetimeimport threadingclass RemoteMonitor: ip = '' port = 22 ...
2018-06-01 21:21:47
1029
原创 图像处理总结概念
1.直方图:一幅图像由不同灰度值的像素组成,图像中灰度的分布情况是该图像的一个重要特征。图像的灰度直方图就描述了图像中灰度分布情况,能够很直观的展示出图像中各个灰度级所占的多少。图像的灰度直方图是灰度级的函数,描述的是图像中具有该灰度级的像素的个数:其中,横坐标是灰度级,纵坐标是该灰度级出现的频率。数字图像在范围[0,G]内总共有L个灰度级,直方图为h(rK)=nkrK是去见[0,G]内的第K级亮...
2018-05-08 13:29:41
35920
4
原创 基数排序(Radix Sort)
10.基数排序(Radix Sort)基数排序也是非比较的排序算法,对每一位进行排序,从最低位开始排序,复杂度为O(kn),为数组长度,k为数组中的数的最大的位数;(1)算法简介基数排序是按照低位先排序,然后收集;再按照高位排序,然后再收集;依次类推,直到最高位。有时候有些属性是有优先级顺序的,先按低优先级排序,再按高优先级排序。最后的次序就是高优先级高的在前,高优先级相同的低优先级高的在前。基数...
2018-05-08 13:23:11
2492
原创 桶排序(Bucket Sort)
9.桶排序(Bucket Sort)桶排序是计数排序的升级版。它利用了函数的映射关系,高效与否的关键就在于这个映射函数的确定。(1)算法简介桶排序 (Bucket sort)的工作的原理:假设输入数据服从均匀分布,将数据分到有限数量的桶里,每个桶再分别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序进行排(2)算法描述和实现:具体算法描述如下:<1>.设置一个定量的数组当作空...
2018-05-07 11:16:02
591
原创 计数排序(Counting Sort)
8.计数排序(Counting Sort)计数排序的核心在于将输入的数据值转化为键存储在额外开辟的数组空间中。作为一种线性时间复杂度的排序,计数排序要求输入的数据必须是有确定范围的整数。(1)算法简介:是一种稳定的排序算法。计数排序使用一个额外的数组C,其中第i个元素是待排序数组A中值等于i的元素的个数。然后根据数组C来将A中的元素排到正确的位置。它只能对整数进行排序。(2)算法描述和实现:具体算...
2018-05-07 11:15:25
199
原创 堆排序(Heap Sort)
7.堆排序(Heap Sort)堆排序可以说是一种利用堆的概念来排序的选择排序。(1)算法简介堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。(2)算法描述和实现具体算法描述如下:<1>.将初始待排序关键字序列(R1,R2....Rn)构建成大顶堆,此堆为初始...
2018-05-07 11:14:52
312
原创 快速排序(Quick Sort)
6.快速排序(Quick Sort)快速排序的名字起的是简单粗暴,因为一听到这个名字你就知道它存在的意义,就是快,而且效率高! 它是处理大数据最快的排序算法之一了。(1)算法简介快速排序的基本思想:通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。(2)算法描述和实现快速排序使用分治法来把一个串(list...
2018-05-07 11:14:24
280
原创 归并排序(Merge Sort)
5.归并排序(Merge Sort)和选择排序一样,归并排序的性能不受输入数据的影响,但表现比选择排序好的多,因为始终都是O(n log n)的时间复杂度。代价是需要额外的内存空间。(1)算法简介归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。归并排序是一种稳定的排序方法。将已有序的子序列合并,得到完全有序的序列;即先...
2018-05-07 11:13:31
330
原创 希尔排序(Shell Sort)
4.希尔排序(Shell Sort)第一个突破O(n^2)的排序算法;是简单插入排序的改进版;它与插入排序的不同之处在于,它会优先比较距离较远的元素。希尔排序又叫缩小增量排序(1)算法简介希尔排序的核心在于间隔序列的设定。既可以提前设定好间隔序列,也可以动态的定义间隔序列。(2)算法描述和实现先将整个待排序的记录序列分割成为若干子序列分别进行直接插入排序,具体算法描述:<1>. 选择一...
2018-05-07 11:12:58
246
原创 插入排序(Insertion Sort)
3.插入排序(Insertion Sort)插入排序的代码实现虽然没有冒泡排序和选择排序那么简单粗暴,但它的原理应该是最容易理解的了,因为只要打过扑克牌的人都应该能够秒懂。(1)算法简介:插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-plac...
2018-05-07 11:12:29
334
原创 选择排序(Selection Sort)
2.选择排序(Selection Sort):表现最稳定的排序算法之一(这个稳定不是指算法层面上的稳定哈,相信聪明的你能明白我说的意思2333),因为无论什么数据进去都是O(n²)的时间复杂度.....所以用到它的时候,数据规模越小越好。唯一的好处可能就是不占用额外的内存空间了吧。理论上讲,选择排序可能也是平时排序一般人想到的最多的排序方法了吧。(1)算法简介:选择排序(Selection-sor...
2018-05-07 11:11:47
2735
原创 冒泡排序(Bubble Sort)
插入、冒泡排序的速度较慢,但参加排序的序列局部或整体有序时,这种排序能达到较快的速度。反而在这种情况下,快速排序慢了。 当n较小时,对稳定性不作要求时宜用选择排序,对稳定性有要求时宜用插入或冒泡排序。若待排序的记录的关键字在一个明显有限范围内时,且空间允许时用桶排序。当n较大时,关键字元素比较随机,对稳定性没要求宜用快速排序。当n较大时,关键字元素可能出现本身是有序的,对稳定性有要求时,空间允许的...
2018-05-07 11:11:11
899
原创 排序算法总结
排序算法说明(1)排序的定义:对一序列对象根据某个关键字进行排序;输入:n个数:a1,a2,a3,...,an输出:n个数的排列:a1',a2',a3',...,an',使得a1'<=a2'<=a3'<=...<=an'。再讲的形象点就是排排坐,调座位,高的站在后面,矮的站在前面咯。(3)对于评述算法优劣术语的说明稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面...
2018-05-07 11:05:13
436
leetcode-cpp
2018-10-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人