研磨数据结构与算法-02各种排序算法
2015-09-17 20:05
411 查看
一,冒泡排序法public class BubbleSort {public static long[] sort(long[] arr){long temp;for(int i=0;i<arr.length-1;i++){for(int j=arr.length-1;j>i;j--){if(arr[j]<arr[j-1]){temp=arr[j];arr[j] = arr[j-1];arr[j-1]=temp;}}}return arr;}}测试:public class TestSort {public static void main(String[] args) {long[] arr = new long[5];arr[0]=34;arr[1]=23;arr[2]=2;arr[3]=1;System.out.println("[");for(long num:arr){System.out.println(num+" ");}System.out.println("]");System.out.println();arr = BubbleSort.sort(arr);System.out.println("[");for(long num:arr){System.out.println(num+" ");}System.out.println("]");System.out.println();}}二:选择排序public class SelectionSort {public static long[] sort(long[] arr){int k=0;long temp;for(int i=0;i<arr.length-1;i++){k=i;for(int j=i;j<arr.length;j++){if(arr[j]<arr[k]){k=j;}}temp=arr[i];arr[i]=arr[k];arr[k]=temp;}return arr;}}测试:public class TestSort {public static void main(String[] args) {long[] arr = new long[5];arr[0]=34;arr[1]=23;arr[2]=2;arr[3]=1;arr[4]=-1;System.out.println("[");for(long num:arr){System.out.println(num+" ");}System.out.println("]");System.out.println();arr = SelectionSort.sort(arr);System.out.println("[");for(long num:arr){System.out.println(num+" ");}System.out.println("]");System.out.println();}}三:插入排序public class InsertSort {public static long[] sort(long[] arr){long temp=0;for(int i=1;i<arr.length-1;i++){temp=arr[i];int j=1;while(j<0&&arr[j]>=temp){arr[j]=arr[j-1];j--;}arr[j]=temp;}return arr;}}测试:public class TestSort {public static void main(String[] args) {long[] arr = new long[5];arr[0]=34;arr[1]=23;arr[2]=2;arr[3]=1;arr[4]=-1;System.out.println("[");for(long num:arr){System.out.println(num+" ");}System.out.println("]");System.out.println();arr = InsertSort.sort(arr);System.out.println("[");for(long num:arr){System.out.println(num+" ");}System.out.println("]");System.out.println();}}
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统