C语言简单查找排序方法及代码
31页1、第一部分 查找1、线性查找法:import java.util.Scanner;public class SearchDataElement public static void main(String args) Scanner scanner=new Scanner(System.in);intarray;array=new int8,7,5,4,1,5,9,6,3,4;for(int i=0;i=low)int mid=(low+high)/2;if(key2 #include 4 /插入排序从下到大,nData 为要排序的数据,nNum 为数据的个数,该排序是稳定的排序 5 bool InsertionSort(int nData, int nNum)6 7 for (int i = 1; i nTemp) /找到位置,然后插入该位置,之后的数据后移13 14 for (int k = i; k j; -k) /数据后移15 16 nDatak = nDatak -1;17 18 nDataj = nTemp; /将数据插入到指定位置19 break;20 21 22 24 r
2、eturn true;25 27 int main()28 29 int nData10 = 4,10,9,8,7,6,5,4,3,2; /创建 10 个数据,测试30 InsertionSort(nData, 10); /调用插入排序32 for (int i = 0; i 就像冒泡一样,轻的在上面,重的在下面,换成数据,就是小的在上面,大的在下面。 我们先把最轻的冒出到顶端,然后冒出第二轻的在最轻的下面,接着冒出第三轻的。依次内推。直到所有都冒出来了为止。3.我们怎么做到把最轻的放在顶端呢?我们从最底下的数据开始冒,如果比他上面的数据小,就交换(冒上去) ,然后再用第二第下的数据比较(此时他已经是较轻的一个) ,如果他比他上面的小,则交换,把小的冒上去。直到比到第一位置,得到的就是最轻的数据咯,这个过程就像是冒泡一样,下面的和上面的比较,小的冒上去。大的沉下来。 画个图先:最初 第一次结果 第二次结果 第三次结果3 3 3 14 4 1 32 1 4 41 2 2 2开始:1 和 2 比,1 比 2 小,浮上,然后 1 跟 4 比,再 1 跟 3 比,这样结构就变为1,3,4,2。
3、最小的位置确定了,然后我们确定第二小的,同理 2 vs 4, 2 vs 3 得到 2, 再确定第 3 小数据,3 vs 4 得到 3,最后就是 4 为最大的数据,我们冒泡就排好了。注:这里红色的 1,2 是前一次比较 1 vs 2 交换的结构。后面也一样。大概思路就这样了,奉上源代码:#include #include /冒泡排序, pnData 要排序的数据, nLen 数据的个数int BubbleSort(int* pnData, int nLen)bool isOk = false; /设置排序是否结束的哨兵/i 从0,nLen-1) 开始冒泡,确定第 i 个元素for (int i = 0; i i; -j)if (pnDataj #include /选择排序, pnData 要排序的数据, nLen 数据的个数int SelectSort(int* pnData, int nLen)/i 从0,nLen-1) 开始选择,确定第 i 个元素for (int i = 0; i #include /对单个组排序int SortGroup(int* pnData, int nLen
4、, int nBegin,int nStep)for (int i = nBegin + nStep; i j; k -= nStep)pnDatak = pnDatak - nStep;pnDataj = nTemp;return 1;/希尔排序, pnData 要排序的数据, nLen 数据的个数int ShellSort(int* pnData, int nLen)/以 nStep 分组,nStep 每次减为原来的一半。for (int nStep = nLen / 2; nStep 0; nStep /= 2)/对每个组进行排序for (int i = 0 ;i 2,所以把而放进去(4) 57 468 123000 同理 3 4(6) 7 68 1234500 同理 5 6(7) 7 8 1234560 同理 7 6(8) 0(空了 ) 8 12345670 同理 7 2 #include 4 /合并排序的合并程序他合并数组 nData 中位置为nP,nM) 和nM,nR).这个是更接近标准的思路5 bool MergeStandard(int nData, int nP, i
《C语言简单查找排序方法及代码》由会员宝路分享,可在线阅读,更多相关《C语言简单查找排序方法及代码》请在金锄头文库上搜索。
一种高炉喷煤喷吹罐底部硫化装置密封改造
谈谈公文写作的两个关键问题
大学生职业生涯规划之课件【P33】
2018高考物理(新课标)一轮复习讲解第六章机械能第3讲机械能守恒定律及其应用
两学一做四个合格做合格党员PPT课件
软件体系结构-作业2017-3
嵌入式Linux操作系统第2章-1
售前交流技巧和经验
《民主选举:投出理性一票》课件(新人教版必修2)1
路面工程施工与检测单元一沥青混合料路面基础知识
有机反应机理(2013年1月21日)
武汉枫叶学校4BC分级考试说明
思想品德《友好交往礼为先》课件(人教新课标八年级上)
青开八中教师草根讲坛张所治
医患关系紧张的主要原因
【南昌银沙湾农庄】项目介绍
苏教版六年级语文8《三打白骨精》
高三第二阶段历史复习要略(周崴)
语言表达准确生动得体
2017语文S版语文一年级下册识字4《拍手歌》课件3
2024-04-18 4页
2024-04-18 2页
2024-04-18 2页
2024-04-18 2页
2024-04-18 5页
2024-04-18 2页
2024-04-18 4页
2024-04-18 3页
2024-04-18 2页
2024-04-18 2页