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

Java 选择排序与冒泡排序

时间:2015-06-18 12:59:59      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

Java 选择排序与冒泡排序

1.DataSorter.java

public class DataSorter {

	//冒泡排序法
	//主要思路:按升序排序,数组元素两两比较,大的立即排后面
	public static void bubbleSort(int[] a) {
		for(int i = 1 ;i < a.length ;i++){			//控制外循环次数
			for(int j = 0 ;j < a.length - i ;j++){
				if(a[j] > a[j+1]){					//数组元素两两比较,大的立即排后面
					swap(a, j, j+1);
				}
			}
		}
	}
	

	//直接选择排序法
	//主要思路:按升序排序,每次循环找出最大数,把他放到最后一个位置上
	public static void selectSort(int[] a) {
		
		int index;							//保存每次比较最大值的下标;
		
		for(int i = 1; i < a.length; i++){	//控制外循环次数
			index = 0;
			for(int j = 1; j <= a.length - i ; j++){
				if(a[j] > a[index]){
					index = j;
				}
			}
			swap(a, index, a.length -i);
		}
	}

	
	//交换数组元素
	private static void swap(int[] a, int x, int y) {
		int tmp = a[x];
		a[x] = a[y];
		a[y] = tmp;
	}
	
	//输出数组元素
	public static void show(int[] a) {
		for(int i = 0; i < a.length; i++){
			System.out.println(a[i]);
		}
	}
	
}

  

2.测试类Test.java

public class Test {

	public static void main(String[] args) {
		int [] a = {9,2,1,8,0,3};
		DataSorter.selectSort(a);
		DataSorter.show(a);
		
	}

}

  

3.测试结果:

技术分享

Java 选择排序与冒泡排序

标签:

原文地址:http://www.cnblogs.com/shamgod/p/4585261.html

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