码迷,mamicode.com
首页 > 编程语言 > 详细

数组排序

时间:2019-04-03 00:00:28      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:数组排序   最小   code   pre   第一步   public   eth   其他   alt   

1. 选择法排序

  把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来 ,比较完后,第一位就是最小的,然后再从第二位和剩余的其他所有进行比较,只要比第二位小,就换到第二个位置来 ,比较完后,第二位就是第二小的.

  技术图片

public class SelectSort {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a[] = new int[]{18,62,68,82,65,9};
		for(int i=0;i<a.length;i++){
			System.out.print(a[i]+" ");
		}
		System.out.println();
		for(int j=0; j<a.length-1;j++){
			for(int i=j+1;i<a.length;i++){
				if(a[i]<a[j]){
					int temp = a[j];
					a[j] = a[i];
					a[i] = temp;
				}
			}
		}
		for(int i=0;i<a.length;i++){
			System.out.print(a[i]+" ");
		}
		System.out.println();
	}

}

  技术图片

2. 冒泡法排序

  第一步:从第一位开始,把相邻两位进行比较 ,如果发现前面的比后面的大,就把大的数据交换在后面,循环比较完毕后,最后一位就是最大的,第二步: 再来一次,只不过不用比较最后一位。

  技术图片

public class BubbleSort {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a[] = new int[]{18,62,68,82,65,9};
		for(int i=0;i<a.length;i++){
			System.out.print(a[i]+" ");
		}
		System.out.println();
		for(int j=0;j<a.length;j++){
			for(int i=0;i<a.length-j-1;i++){
				if(a[i]>a[i+1]){
					int temp=a[i];
					a[i] = a[i+1];
					a[i+1] = temp;
				}
			}
		}
		for(int i=0;i<a.length;i++){
			System.out.print(a[i]+" ");
		}
		System.out.println();
	}

}

  技术图片

 

数组排序

标签:数组排序   最小   code   pre   第一步   public   eth   其他   alt   

原文地址:https://www.cnblogs.com/homle/p/10646257.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!