数据结构
吕国宇
精通网络营销各种编程语言例如c
展开
-
顺序查找
该顺序查找文件是一个学生信息记录文件,其中包括4条记录。所谓关键字就是每个文件记录的唯一标识,在该文件中学号就可充当记录的关键字。在一个文件中,两个记录的关键之是不能相同的,所以该学生记录文件的关键字可以设定为学号。对文件中记录的查找就是对其关键字的查找,找到了关键字就找到了该关键字对应的那条记录。 下面是源代码: #include typedef struct student {原创 2012-12-31 00:08:06 · 504 阅读 · 0 评论 -
直接插入排序
直接插入排序是一种最为简单的排序方法。其基本思想是:在第i次排序中,第i+1个元素与前面的i个元素,进行比较。然后插入到已经有序的数列中的合适的位置。使得插入后的序列任然是保持有秩序的。 例题:编写一个C程序,实现数据序列{{2,5,6,3,7,8,0,9,4,1}的直接插入排序,要求是从小到大,并输出排序后的数列元素。 源程序: #include void insertsort原创 2013-01-02 00:39:41 · 413 阅读 · 1 评论 -
选择排序
选择排序是一种比较常见的排序方法。其基本思想是:第i次排序从序列的后n-i+1个元素中选择一个最小的元素,与该n-i+1个元素交换位置,也就是与第i个元素进行交换位置,直到最后一个元素。 例题:编写一个c程序,实现数据序列{2,5,6,3,7,8,0,9,12,1};的选择排序,要求从小到大,并输出排序后的数列元素。 源程序: #include void selectsort(int原创 2013-01-02 23:33:25 · 269 阅读 · 0 评论 -
折半查找
如果从文件中读取的数据记录的关键字是有序排列的,则可以用一种效果更高的查找方法来查找文件中得记录,这就是折半查找法,又称为二分搜索。 有一个数组A【10】,里面有10个整数,顺序递增。A【10】={2,3,5,7,8,10,12,15,19,21} 其源程序如下: #include bin_search(int A[],int n,int key) { int low ,原创 2012-12-31 23:01:30 · 861 阅读 · 0 评论 -
冒泡排序
冒泡排序是一种最为常用的排序方法。是一类具有“交换”性质的排序方法。其基本思想如下: 将序列中的第一个元素与第二个元素进行比较,若前者大于后者,则将第一个元素与第二个元素进行位置交换,否则不交换。 然后让第二个与第三个元素进行比较…… 等等 直到将第n-1个元素与第n个元素进行比较为止。 例题:编写一个c程序,实现数据序列{1,5,6,3,2,8,4,9,7,0};的从小到大得排序,并且原创 2013-01-04 00:41:17 · 266 阅读 · 0 评论 -
希尔排序
希尔排序(Shell's sort)又称为“缩小增量排序”,希尔排序是对插入排序的一种改造,其效率有较大的改进。 #include void shellsort(int k[],int n) { int i,j,flag,gap=n; int tmp; while(gap>1) { gap=gap/2; do原创 2013-01-09 00:39:07 · 303 阅读 · 0 评论