您的位置:首页 > 编程语言 > Java开发

请用Java实现冒泡、插入、选择排序中的任意一个排序算法。

2018-01-20 17:40 731 查看
请用Java实现冒泡、插入、选择排序中的任意一个排序算法。

作为初学者,以下实现方法可能笨拙或有误,希望有大神看到后给予优化和指点!~

public class Sort {
public static void main(String[] args) {
int [] unsorted = {1,15,10,66,99,88};

int[] mpSort = MPSort(unsorted);
System.out.println(Arrays.toString(mpSort));

System.out.println("-----------------------");

int[] xzSort = XZSort(unsorted);
System.out.println(Arrays.toString(xzSort));

System.out.println("-----------------------");

int[] crSort = CRSort(unsorted);
System.out.println(Arrays.toString(crSort));
}

//冒泡排序
public static int[] MPSort(int[] arr){
for(int i = arr.length - 2;i >= 0;i--){
for(int j = 0;j <= i;j++ ){
if(arr[i] > arr[i+1]){
int tmp;
tmp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = tmp;
}
}
}
return arr;
}

//插入排序
public static int[] CRSort(int[] unsorted){
for (int i = 1; i < unsorted.length; i++)
{
if (unsorted[i - 1] > unsorted[i])
{
int temp = unsorted[i];
int j = i;
while (j > 0 && unsorted[j - 1] > temp)
{
unsorted[j] = unsorted[j - 1];
j--;
}
unsorted[j] = temp;
}
}
return unsorted;

}

//选择排序
public static int[] XZSort(int[] arr){
for(int i = 1;i < arr.length-1;i++){
for(int j = i;j < arr.length-1;j++){
if(arr[j-1] > arr[j]){
int tmp;
tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
}
}
return arr;

}
}下面附上大神-续写经典的博文: Java常用排序算法/程序员必须掌握的8大排序算法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐