java中几种简单的排序.doc
文本预览下载声明
/**
大家好,我现在正在学习java,虽然在这之前我已经学习过一遍了,但是现在再重新来学,才发现以前学的太肤浅了,而且学的质量也很不好,所以,现在我又重新站在了新的起跑线上,开始了我的java学习之旅,喜欢java的朋友和想学习java的朋友来和我一起前进吧。我会及时的把自己学的一些东西总结出来,并传送到文库中和大家一起分享的。
所以Make The Change的时候到了,Everyone,Come On!
(我的QQ号jiaziming1990@,愿意交流的同学可以加我呦)
Java中的几种排序方法:冒泡排序,选择排序,插入排序和快速排序。下面是我当初开始学java时的一些源代码,简单易懂,拿出来分享给大家,希望对刚接触java的人能够有所帮助。
在此,也和大家共勉一下:相信自己,用心学习,大胆创新!
*/
/1.*首先是冒泡排序,冒泡排序的思想是:数组中的相邻的两个数进行比较,如果后面的数比前面的数大,则两个数进行交换,每完成一次循环,最大的那个数就排在了最后面;以此类推,在第n-1次循环后,数组中的n个数就排好了。下面是源代码
*/
public class BubbleSort{
public static void main(String[] args){
int[] arr1={3,5,7,6,4,8,2,1};
for(int i=0;iarr1.length;i++){
System.out.print(arr1[i]);
}
for(int i=0;iarr1.length-1;i++){
for(int j=0;jarr1.length-1-i;j++){
if(arr1[j]arr1[j+1]){
int temp=arr1[j];
arr1[j]=arr1[j+1];
arr1[j+1]=temp;
}
}
}
System.out.println();
for(int i=0;iarr1.length;i++){
System.out.print(arr1[i]);
}
}
}
/*2.其次是选择排序.选择排序的思想是记录下数组中最小的那个数的下标,然后与第一个数进行交换,以此类推,直到排好序为止。下面是源代码
*/
public class ChoiceSort{
public static void main(String[] args){
int[] arr={9,7,4,1,2,6,8,3,5};
for(int i=0;iarr.length;i++){
System.out.print(arr[i]);
}
//排序
for(int i=0;iarr.length-1;i++){
int index=selectMin(arr,i);
swap(arr,i,index);
}
System.out.println();
for(int i=0;iarr.length;i++){
System.out.print(arr[i]);
}
}
//找到最小的数的下标
public static int selectMin(int[] arr,int index){
int min=arr[index];
int mIndex=index;
for(int i=index+1;iarr.length;i++){
if(arr[i]min){
min=arr[i];
mIndex=i;
}
}
return mIndex;
}
//两个数进行交换
public static void swap(int[] arr,int x,int y){
int temp=arr[x];
arr[x]=arr[y];
arr[y]=temp;
}
}
/*3.然后是插入排序。插入排序的基本思想是:新建一个数组,将需要排序的数组的第一个元素先放到新数组中去,然后把剩下的元素有序的、依次插入到新数组中去。下面是源代码
*/
public class InsertSort{
public static void main(String[] args){
int[] arr1={3,2,1,5,4,8,6,9,7};
int[] arr2=new int[arr1.length];
arr2[0]=arr1[0];
for(int i=0;iarr1.length;i++){
System.out.print(arr1[i
显示全部