欢迎来到天天文库
浏览记录
ID:57057864
大小:2.47 MB
页数:20页
时间:2020-07-30
《java 数据结构第10章 排序课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据结构(Java语言版)——第10章排序教学回顾排序的分类大致上可分为两种内部排序交换式排序选择式排序插入式排序实现对对象的排序classStudentimplementsComparable{//通过类描述学生的资料,实现Comparable接口Stringstuno;//学号intage;publicStudent(Stringstuno,intage,intindex){this.stuno=stuno;this.age=age;this.index=index;}publicintgetAge(){returnage
2、;}publicvoidsetAge(intage){this.age=age;}……………publicintcompareTo(Objectobj){Students=(Student)obj;returnthis.stuno.compareTo(s.stuno);}}publicvoidquick(Comparable[]c,intstart,intend){Comparabletmp=c[start];intn=end-start+1;//参与排序的元素个数inti=start,j=end;while(i3、e(c[j].compareTo(tmp)>=0&&ii+1)quick(c,i+1,end);//对右子序列进行划分}publicclassQuickSort{publicstaticvoidmain(String[]a4、rgs){QuickSortqs=newQuickSort();Students1=newStudent("g1",33);Students2=newStudent("a1",22);Students3=newStudent("d1",11);Student[]s={s1,s2,s3};qs.quick(s,0,2);for(inti=0;i5、lassQuickSort{publicstaticvoidmain(String[]args){Students1=newStudent("g1",33);Students2=newStudent("a1",22);Students3=newStudent("d1",11);Student[]s={s1,s2,s3};Arrays.sort(s);for(inti=0;i6、;importjava.util.*;publicclassTest{publicstaticvoidmain(Stringargs[]){Comparatorcmp=Collator.getInstance(Locale.CHINA);String[]a={"张三","李四","王五","王六"};Arrays.sort(a,cmp);for(inti=0;i本程序启动后7、,进入到彩票机的界面,在界面的又上角有一组单选框,分别是手选和机选(默认)。如果是机选,则点击“开始”按钮生成一组1到30的随机数并显示在7个小文本框里(没有控制是否有重复数)。点击“排序”按钮将7个数进行排序后并显示在界面中间的文本域中。如果是手选,则自己在7个文本框中填写所喜欢的号码,然后点击“开始”按钮将7个号码排序后输出。“清除”按钮是将显示区域的数据清除,“退出”按钮是退出程序。插入排序直接插入排序直接插入排序是指每次将一个元素插入到已经排好序的序列中,直到结束为止。【例10.1】将变量b插入到已经排序的a数组中。i8、nt[]a={10,21,35,62,85,90};//排好序的序列intb=30;步骤:(1)定义一个数组c,其元素个数比数组a多1,其定义如下:int[]c=newint[a.length+1];(2)把数组a的元素复制到数组c中,使得数组c包含数组a的所有元素,数组c的
3、e(c[j].compareTo(tmp)>=0&&ii+1)quick(c,i+1,end);//对右子序列进行划分}publicclassQuickSort{publicstaticvoidmain(String[]a
4、rgs){QuickSortqs=newQuickSort();Students1=newStudent("g1",33);Students2=newStudent("a1",22);Students3=newStudent("d1",11);Student[]s={s1,s2,s3};qs.quick(s,0,2);for(inti=0;i5、lassQuickSort{publicstaticvoidmain(String[]args){Students1=newStudent("g1",33);Students2=newStudent("a1",22);Students3=newStudent("d1",11);Student[]s={s1,s2,s3};Arrays.sort(s);for(inti=0;i6、;importjava.util.*;publicclassTest{publicstaticvoidmain(Stringargs[]){Comparatorcmp=Collator.getInstance(Locale.CHINA);String[]a={"张三","李四","王五","王六"};Arrays.sort(a,cmp);for(inti=0;i本程序启动后7、,进入到彩票机的界面,在界面的又上角有一组单选框,分别是手选和机选(默认)。如果是机选,则点击“开始”按钮生成一组1到30的随机数并显示在7个小文本框里(没有控制是否有重复数)。点击“排序”按钮将7个数进行排序后并显示在界面中间的文本域中。如果是手选,则自己在7个文本框中填写所喜欢的号码,然后点击“开始”按钮将7个号码排序后输出。“清除”按钮是将显示区域的数据清除,“退出”按钮是退出程序。插入排序直接插入排序直接插入排序是指每次将一个元素插入到已经排好序的序列中,直到结束为止。【例10.1】将变量b插入到已经排序的a数组中。i8、nt[]a={10,21,35,62,85,90};//排好序的序列intb=30;步骤:(1)定义一个数组c,其元素个数比数组a多1,其定义如下:int[]c=newint[a.length+1];(2)把数组a的元素复制到数组c中,使得数组c包含数组a的所有元素,数组c的
5、lassQuickSort{publicstaticvoidmain(String[]args){Students1=newStudent("g1",33);Students2=newStudent("a1",22);Students3=newStudent("d1",11);Student[]s={s1,s2,s3};Arrays.sort(s);for(inti=0;i6、;importjava.util.*;publicclassTest{publicstaticvoidmain(Stringargs[]){Comparatorcmp=Collator.getInstance(Locale.CHINA);String[]a={"张三","李四","王五","王六"};Arrays.sort(a,cmp);for(inti=0;i本程序启动后7、,进入到彩票机的界面,在界面的又上角有一组单选框,分别是手选和机选(默认)。如果是机选,则点击“开始”按钮生成一组1到30的随机数并显示在7个小文本框里(没有控制是否有重复数)。点击“排序”按钮将7个数进行排序后并显示在界面中间的文本域中。如果是手选,则自己在7个文本框中填写所喜欢的号码,然后点击“开始”按钮将7个号码排序后输出。“清除”按钮是将显示区域的数据清除,“退出”按钮是退出程序。插入排序直接插入排序直接插入排序是指每次将一个元素插入到已经排好序的序列中,直到结束为止。【例10.1】将变量b插入到已经排序的a数组中。i8、nt[]a={10,21,35,62,85,90};//排好序的序列intb=30;步骤:(1)定义一个数组c,其元素个数比数组a多1,其定义如下:int[]c=newint[a.length+1];(2)把数组a的元素复制到数组c中,使得数组c包含数组a的所有元素,数组c的
6、;importjava.util.*;publicclassTest{publicstaticvoidmain(Stringargs[]){Comparatorcmp=Collator.getInstance(Locale.CHINA);String[]a={"张三","李四","王五","王六"};Arrays.sort(a,cmp);for(inti=0;i本程序启动后
7、,进入到彩票机的界面,在界面的又上角有一组单选框,分别是手选和机选(默认)。如果是机选,则点击“开始”按钮生成一组1到30的随机数并显示在7个小文本框里(没有控制是否有重复数)。点击“排序”按钮将7个数进行排序后并显示在界面中间的文本域中。如果是手选,则自己在7个文本框中填写所喜欢的号码,然后点击“开始”按钮将7个号码排序后输出。“清除”按钮是将显示区域的数据清除,“退出”按钮是退出程序。插入排序直接插入排序直接插入排序是指每次将一个元素插入到已经排好序的序列中,直到结束为止。【例10.1】将变量b插入到已经排序的a数组中。i
8、nt[]a={10,21,35,62,85,90};//排好序的序列intb=30;步骤:(1)定义一个数组c,其元素个数比数组a多1,其定义如下:int[]c=newint[a.length+1];(2)把数组a的元素复制到数组c中,使得数组c包含数组a的所有元素,数组c的
此文档下载收益归作者所有