您的位置:首页 > 理论基础 > 数据结构算法

重拾数据结构:简单排序

2013-06-06 20:19 302 查看
直接给代码:

冒泡+选择+插入:

package com.data.silence;
/**
* 简单排序:冒泡,选择,插入
* @author silence
*
*/
public class SimpleSort {
public static void bunbleSort(int[] a){
System.out.println("这是bunbleSort");
for(int i=a.length-1;i>0;i--){
for(int j=0;j<i;j++){
if(a[j]>a[i]){
swap(a,i,j);
}
}
}
}
public static void selectSort(int[] a){
System.out.println("这是selectSort");
for(int i=a.length-1;i>0;i--){
int max = i;
for(int j=0;j<i;j++){
if(a[j]>a[max]){
max = j;
}
}
swap(a, i, max);
}
}
public static void insertSort(int[] a){
System.out.println("这是insertSort");
for(int i = 1; i<a.length;i++){
//			for(int j=i-1;j>=0&&a[j]>a[j+1];j--){
//				swap(a, j, j+1);
//			}
int temp=a[i],j=i;
if(a[j-1]>temp){
while(j>0&&a[j-1]>temp){
a[j]=a[j-1];
j--;
}
a[j]=temp;
}
}
}
public static void swap(int[] a,int i ,int j){
int temp = a[i];
a[i]=a[j];
a[j]=temp;
}
public static void output(int[] a){
for(int i=0;i<a.length;i++){
System.out.print(a[i]+",");
}
System.out.println();
}
public static void main(String[] args){
int[] a = new int[]{33,89,76,4,2,0,88,89,1,28};
output(a);
//		bunbleSort(a);
//		output(a);
//		selectSort(a);
//		output(a);
insertSort(a);
output(a);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息