摘要: 快速排序算法采用分治法思想;快速排序是冒泡排序的一种改进;快速排序的标志位的选取有一下几种情况:1.每次都取第一个元素,这样操作简单,但是效率不一定高2.每次都取最后一个元素,同上3.随机产生一个下标,用此下标所表示的数字作为标志位4.随机产生一个下标,用此下标所表示的数字与第一个元素交换,剩下的操... 阅读全文
posted @ 2013-05-18 16:45 独墅一枝花 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 常用shell命令cd 跳转pscd .. 返回上一级mkdir 创建文件夹lsdir 显示文件夹rmdir 删除文件夹pwd 显示当前路径cp 拷贝ping ifconfiguseradd+用户名 添加用户(root权限才能)password+用户名 不写此句即不设密码;不写用户名即为当前用户设密码userdel+用户名 删除用户userdel -r 用户名 删除用户以及用户主目录rm -rf 删除所有内容,包括目录和文件 r表示递归,f表示强制find -name 文件名 查找文件在当前文件夹下 阅读全文
posted @ 2013-05-18 16:28 独墅一枝花 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 希尔排序,也称递减增量排序算法,是插入排序的一种高速而稳定的改进版本。希尔排序是基于插入排序的以下两点性质而提出改进方法的:1.插入排序在对几乎已经排好序的数据操作时, 效率高, 即可以达到线性排序的效率2.但插入排序一般来说是低效的, 因为插入排序每次只能将数据移动一位步长的选择是希尔排序的重要部分。只要最终步长为1任何步长串行都可以工作。算法最开始以一定的步长进行排序。然后会继续以一定步长进行排序,最终算法以步长为1进行排序。当步长为1时,算法变为插入排序,这就保证了数据一定会被排序。代码如下:ShellSort.c文件如下:#include "ShellSort.h" 阅读全文
posted @ 2013-05-18 16:22 独墅一枝花 阅读(190) 评论(0) 推荐(0) 编辑
摘要: C语言中数组的长度能不能为0?长度为0的数组在标准C和C++中是不允许的,如果使用长度为0的数组,编译时会产生错误,提示数组长度不能为0。但在GNUC中,这种用法却是合法的。它的最典型的用法就是位于数组中的最后一项,如上面所示,这样做主要是为了方便内存缓冲区的管理。如果你将上面的长度为0的数组换为指针,那么在分配内存时,需采用两步:首先,需为结构体分配一块内存空间;其次再为结构体中的成员变量分配内存空间。这样两次分配的内存是不连续的,需要分别对其进行管理。当使用长度为0的数组时,则是采用一次分配的原则,一次性将所需的内存全部分配给它。相反,释放时也是一样的。对于长度为的数组,在gcc手册中,有 阅读全文
posted @ 2013-05-18 09:37 独墅一枝花 阅读(1822) 评论(0) 推荐(1) 编辑
摘要: 算法描述如下:1.从第一个元素开始,该元素可以认为已经被排序2.取出下一个元素,在已经排序的元素序列中从后向前扫描3.如果该元素(已排序)大于新元素,将该元素移到下一位置4.重复步骤3,直到找到已排序的元素小于或者等于新元素的位置5.将新元素插入到该位置后6.重复步骤2~5代码如下:Insertio... 阅读全文
posted @ 2013-05-18 09:31 独墅一枝花 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 1.float型与零值比较的语句if(x 0.000001) // !=0if(x > -0.000001 && x < 0.000001)// =02.float型与float型如何判断相等浮点数的表示是不精确的,不能直接比较两个数是否完全相等,一般都是在允许的某个范围内认为像个浮点数相等,如有... 阅读全文
posted @ 2013-05-18 00:03 独墅一枝花 阅读(788) 评论(0) 推荐(0) 编辑