排序之java
程序员文章站
2022-07-15 09:30:17
...
排序之java
这里讲解三种基本的排序:冒泡排序,插入排序,选择排序
冒泡排序:搜索整个值,比较相邻的两个值。如果后者值大于前者,则进行交换。(优化:可采用boolean值处理)
选择排序:感觉和冒泡有点像。搜索整个值,将第一个值和后面所有的值进行比较,取出最小的数放入第一个,然后第二个数继续和后面所有的值比较,然后取出最小的值放入第二个,依次类推。(优化:可采用boolean值处理)
插入排序:将第一个数据和第二个数据进行有序排列,从0到I个数据进行有序排列,然后将I+1插入到0+I的有序排列中。逐步实现有序排列。(优化:可采用二分法)
这里讲解三种基本的排序:冒泡排序,插入排序,选择排序
冒泡排序:搜索整个值,比较相邻的两个值。如果后者值大于前者,则进行交换。(优化:可采用boolean值处理)
public static void bubbleSort(int data[]){ //获取所有长度 int l=data.length; //循环总个数-1 for(int i=0;i<l-1;i++ ){ //比较相邻的两个数,如果后者大于前者,则交换。 for(int j=1;j<l-i;j++){ if(data[j-1]<data[j]){ int temp=data[j]; data[j]=data[j-1]; data[j-1]=temp; } } for(int d:data){ System.out.println(d); } System.out.println("================="); }
选择排序:感觉和冒泡有点像。搜索整个值,将第一个值和后面所有的值进行比较,取出最小的数放入第一个,然后第二个数继续和后面所有的值比较,然后取出最小的值放入第二个,依次类推。(优化:可采用boolean值处理)
public static void chooseSort(int []b){ for(int i=0; i<b.length-1; i++){ //将第i个值和所有值进行比较,取出最小值放入第i个。 for(int j=i+1;j<b.length;j++){ if(b[i]>b[j]){ int temp=b[i]; b[i]=b[j]; b[j]=temp; } } for(int d:b){ System.out.println(d); } System.out.println("================="); } }
插入排序:将第一个数据和第二个数据进行有序排列,从0到I个数据进行有序排列,然后将I+1插入到0+I的有序排列中。逐步实现有序排列。(优化:可采用二分法)
public static void insertSort(int []b){ //取第二个到最后一个值遍历 for(int i=1; i<b.length; i++){ //对0到i个值进行有序排列 for(int j=0;j<i;j++){ if(b[i]<b[j]){ int temp=b[i]; b[i]=b[j]; b[j]=temp; } } for(int d:b){ System.out.println(d); } System.out.println("================="); } }
上一篇: 排序之java
推荐阅读