首页 > 代码库 > 四种简单的排序算法
四种简单的排序算法
package data;public class Sort { String endline = System.getProperty("line.separator"); //选择排序 public void selectSort(int[] arr){ int len = arr.length; int k; int tmp; for(int i = 0;i<len;i++){ for(int l:arr){ System.out.print(l+" "); } System.out.print(endline); k= i; for(int j =i;j<len;j++){ if(arr[j]<arr[k]){ k=j; } } tmp= arr[i]; arr[i]=arr[k]; arr[k]=tmp; } } //冒泡排序 public void popSort(int[] arr){ int len =arr.length; int tmp; for(int i=0;i<len;i++){ for(int l:arr){ System.out.print(l+" "); } System.out.print(endline); for(int j=0;j<len-i-1;j++){ if(arr[j] > arr[j+1]){ tmp =arr[j]; arr[j] = arr[j+1]; arr[j+1] = tmp; } } } } //insertSort插入排序 public void insertSort(int[] arr){ int len = arr.length; int tmp; for(int i =1;i<len;i++){ for(int l:arr){ System.out.print(l+" "); } System.out.print(endline); for(int j =i;j>0;j--){ if(arr[j]<arr[j-1]){ tmp = arr[j-1]; arr[j-1] = arr[j]; arr[j] = tmp; } else{ break; } } } } //shellSort希尔排序 public void shellSort(int[] arr){ int len = arr.length; int tmp; int k; for(int l:arr){ System.out.print(l+" "); } System.out.print(endline); for(int d =len/2;d >0; d /= 2 ){ for(int i =0;i<=d;i++){ for(int j=i+d;j<len;j +=d){ for(k = j;k>=d;k -=d){ if(arr[k]<arr[k-d]){ tmp = arr[k-d]; arr[k-d]=arr[k]; arr[k]=tmp; } } } } for(int l:arr){ System.out.print(l+" "); } System.out.print(endline); } }}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。