本次作业两名同学的学号,本次作业GIT的提交地址:
1501020505富裕,1501020526徐庆祥 https://gitee.com/X0205/05FuYu-26XuQingXiang-KaoHeSan.git
代码行数 | 博客字数 | 学习时间 | |
第十四周 | 200/200 | 500 | 5h |
第十五周 | 300/300 | 500 | 5h |
本次考核主要考的是快速排序,通过查找我了解了快速排序大致的意思:
快速排序是指通过一段排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
首先选取一个基准数,然后将这个基准书与别的数进行比较,如果基准书比它大,那么将两个数位置对调。进行多次上述步骤之后,得到最终结果。
代码部分:
1 public class kuaisu { 2 static void jh(int a[],int l ,int r) //选择两个数并进行交换 3 { 4 int m; 5 m=a[l]; 6 a[l]=a[r]; 7 a[r]=m; 8 } 9 static int ks(int a[],int l,int r) 10 { 11 if (l==r) 12 { 13 } 14 int f=l; //将第一个数作为基数 15 for (int i=l+1;i<r+1;i++) 16 { 17 if (a[f]>a[i]) //如果比基准数小,则放在基准书前面 18 { 19 jh(a,f,i); 20 f+=1; 21 } 22 } 23 return f; //返回索引 24 } 25 public static void main(String[] args) { 26 // TODO Auto-generated method stub 27 int a[]={15,1,2,5,15,1,2,5,5,26}; 28 int f=ks(a,0,9); //循环调用 29 int k=ks(a,0,f-1); 30 ks(a,k+1,9); 31 for (int i=0;i<a.length;i++) 32 { 33 System.out.print(a[i]+" "); 34 } 35 } 36 }
运行结果截图
对本次考试总结
相比于之前两次考试模式,我认为这种小队合作更加有利于我们的学习,我也很喜欢这种模式。因为在某一项任务中,一个人难免会遇到困难和不理解的地方,以前总是自己摸索,
效果都不尽如人意,但是这次两个人一起后,可以体会到两个人学习的乐趣以及方便。我认为这种模式,做到了老师提到的1+1>2。在互相学习中不管完善自我。
评价搭档
徐庆祥他是一个学习非常好的人,在平时的接触中我能体会到他对编程方面的热爱,而在这次考核中,和他一组我更加认识到他对编程的了解。我认为他是一个天赋很好的人,而且在平日的学习中做到不骄不躁,能够不断地查找资料完善自我。他所拥有的成果和平日的积累成正比,在这次考核中,我遇到不懂得他会细心给我讲,我也认识到了我和他之间的巨大差距,面对问题时,不能够急躁,要平下心来解决问题。