您的位置:首页 > 其它

冒泡排序

2016-10-10 14:24 183 查看
package sort;

import java.util.Comparator;
import java.util.List;

public class Util {

/**
* Comparator
* @param arr
* @param comp
*/
public static <T> void sort(T[] arr,Comparator<T> comp){
int size=arr.length;
for(int i=0;i<size-1;i++){
for(int j=0;j<size-i-1;j++){
if( comp.compare(arr[j], arr[j+1])>0){
T temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}

/**
* 容器排序
*
*/
public static <T extends Comparable> void sort(List<T> list){
Object[] obj=list.toArray();
sort(obj);
for(int i=0;i<obj.length;i++){
list.add((T)obj[i]);
}

}

/**
* 泛型排序
* @param arr
*/
public static <T extends Comparable<T>> void sort(T[] arr){
int size=arr.length;
for(int i=0;i<size-1;i++){
for(int j=0;j<size-i-1;j++){
if( ((Comparable)arr[j]).compareTo(arr[j+1])>0){
T temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}

/**
* object类型的排序
* @param arr
*/
public static void sort(Object[] arr){
int size=arr.length;
for(int i=0;i<size-1;i++){
for(int j=0;j<size-i-1;j++){
if( ((Comparable)arr[j]).compareTo(arr[j+1])>0){
Object temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}

public static void sort(int[] arr){
int size=arr.length;
for(int i=0;i<size-1;i++){
for(int j=0;j<size-i-1;j++){
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: