欢迎来到天天文库
浏览记录
ID:56755468
大小:632.50 KB
页数:18页
时间:2020-07-07
《算法导论课设(5个).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、课程实验报告课程名称算法导论题目堆排序计数排序贪心算法散列表动态规划(院)系理学院专业_信息与计算科学班级1202班_学号260222_学生姓名孙银东黄君叶勇___导师姓名阳卫锋__完成日期______2014年11月20日___________题目一堆排序班级:信科1202姓名:孙银东黄君叶勇一、实验目的:掌握堆的创建,学会利用堆进行排序。二、实验内容:对数组利用堆进行排序。三、实验要求:1)写出算法的伪代码和C程序代码2)记录每一步数组的中元素的变化程序代码参考#include2、>#defineLength10intcompare(inta,intb)//用于比较值的大小{if(a>b){return0;}elseif(a3、child=2*idx+2;if(left_child4、voidbuildheap(intA[])//建堆{inti;for(i=Length/2-1;i>=0;i--){heapify(A,i,Length);}}intmain(){intA[Length]={2,60,3,234,1,0,,23,56,-23};buildheap(A);inti,j;for(i=Length-1;i>=0;--i){swap(A[0],A[i]);heapify(A,0,i);}for(j=0;j5、return0;}四、结果分析堆排序设计结果:五、总结对数组利用堆进行排序,要求我们对前期所学知识了解透彻,这样可以很快得到结论题目二计数排序一、实验目的:学习使用计数排序。二、实验内容:对数组利用计数排序进行排序。三、实验要求:1)写出算法的伪代码和C程序代码2)记录每一步数据结构(比如数组)中元素的变化程序代码参考#includeintmain(){usingnamespacestd;intconstlen=10;inti,j,count;i=j=count=0;intar6、ray_old[len];for(i=0;i<10;i++){scanf("%d",&array_old[i]);}intarray_new[len];for(i=0;iarray_old[j])count++;}array_new[count]=array_old[i];count=0;}cout<<"Theresult:"<7、i]<<"";}cout<8、.h>#includeinttanxin(intn)//贪心算法实现函数{inta[100];intk=1,sum=1,s=0;if(n<5)sum=n;else{a[1]=2;n-=2;while(n>a[k]){k++;a[k]=a[k-1]+1;n-=a[k];s=k;}if(n==a[k]){a[k]++;n--;}for(inti=0;i
2、>#defineLength10intcompare(inta,intb)//用于比较值的大小{if(a>b){return0;}elseif(a
3、child=2*idx+2;if(left_child4、voidbuildheap(intA[])//建堆{inti;for(i=Length/2-1;i>=0;i--){heapify(A,i,Length);}}intmain(){intA[Length]={2,60,3,234,1,0,,23,56,-23};buildheap(A);inti,j;for(i=Length-1;i>=0;--i){swap(A[0],A[i]);heapify(A,0,i);}for(j=0;j5、return0;}四、结果分析堆排序设计结果:五、总结对数组利用堆进行排序,要求我们对前期所学知识了解透彻,这样可以很快得到结论题目二计数排序一、实验目的:学习使用计数排序。二、实验内容:对数组利用计数排序进行排序。三、实验要求:1)写出算法的伪代码和C程序代码2)记录每一步数据结构(比如数组)中元素的变化程序代码参考#includeintmain(){usingnamespacestd;intconstlen=10;inti,j,count;i=j=count=0;intar6、ray_old[len];for(i=0;i<10;i++){scanf("%d",&array_old[i]);}intarray_new[len];for(i=0;iarray_old[j])count++;}array_new[count]=array_old[i];count=0;}cout<<"Theresult:"<7、i]<<"";}cout<8、.h>#includeinttanxin(intn)//贪心算法实现函数{inta[100];intk=1,sum=1,s=0;if(n<5)sum=n;else{a[1]=2;n-=2;while(n>a[k]){k++;a[k]=a[k-1]+1;n-=a[k];s=k;}if(n==a[k]){a[k]++;n--;}for(inti=0;i
4、voidbuildheap(intA[])//建堆{inti;for(i=Length/2-1;i>=0;i--){heapify(A,i,Length);}}intmain(){intA[Length]={2,60,3,234,1,0,,23,56,-23};buildheap(A);inti,j;for(i=Length-1;i>=0;--i){swap(A[0],A[i]);heapify(A,0,i);}for(j=0;j5、return0;}四、结果分析堆排序设计结果:五、总结对数组利用堆进行排序,要求我们对前期所学知识了解透彻,这样可以很快得到结论题目二计数排序一、实验目的:学习使用计数排序。二、实验内容:对数组利用计数排序进行排序。三、实验要求:1)写出算法的伪代码和C程序代码2)记录每一步数据结构(比如数组)中元素的变化程序代码参考#includeintmain(){usingnamespacestd;intconstlen=10;inti,j,count;i=j=count=0;intar6、ray_old[len];for(i=0;i<10;i++){scanf("%d",&array_old[i]);}intarray_new[len];for(i=0;iarray_old[j])count++;}array_new[count]=array_old[i];count=0;}cout<<"Theresult:"<7、i]<<"";}cout<8、.h>#includeinttanxin(intn)//贪心算法实现函数{inta[100];intk=1,sum=1,s=0;if(n<5)sum=n;else{a[1]=2;n-=2;while(n>a[k]){k++;a[k]=a[k-1]+1;n-=a[k];s=k;}if(n==a[k]){a[k]++;n--;}for(inti=0;i
5、return0;}四、结果分析堆排序设计结果:五、总结对数组利用堆进行排序,要求我们对前期所学知识了解透彻,这样可以很快得到结论题目二计数排序一、实验目的:学习使用计数排序。二、实验内容:对数组利用计数排序进行排序。三、实验要求:1)写出算法的伪代码和C程序代码2)记录每一步数据结构(比如数组)中元素的变化程序代码参考#includeintmain(){usingnamespacestd;intconstlen=10;inti,j,count;i=j=count=0;intar
6、ray_old[len];for(i=0;i<10;i++){scanf("%d",&array_old[i]);}intarray_new[len];for(i=0;iarray_old[j])count++;}array_new[count]=array_old[i];count=0;}cout<<"Theresult:"<7、i]<<"";}cout<8、.h>#includeinttanxin(intn)//贪心算法实现函数{inta[100];intk=1,sum=1,s=0;if(n<5)sum=n;else{a[1]=2;n-=2;while(n>a[k]){k++;a[k]=a[k-1]+1;n-=a[k];s=k;}if(n==a[k]){a[k]++;n--;}for(inti=0;i
7、i]<<"";}cout<8、.h>#includeinttanxin(intn)//贪心算法实现函数{inta[100];intk=1,sum=1,s=0;if(n<5)sum=n;else{a[1]=2;n-=2;while(n>a[k]){k++;a[k]=a[k-1]+1;n-=a[k];s=k;}if(n==a[k]){a[k]++;n--;}for(inti=0;i
8、.h>#includeinttanxin(intn)//贪心算法实现函数{inta[100];intk=1,sum=1,s=0;if(n<5)sum=n;else{a[1]=2;n-=2;while(n>a[k]){k++;a[k]=a[k-1]+1;n-=a[k];s=k;}if(n==a[k]){a[k]++;n--;}for(inti=0;i
此文档下载收益归作者所有