前言:可能我们写博客不能总是写一些枯燥的论文,也不能仅仅写一些技术文章,我们可能需要在博客中加入一些其他的元素,那就来个图片表明吧。


回顾篇之Java选择排序_java学习

 

那下面是对Java的选择排序进行了一次回顾。

package com.honzh.mwq.sort;

/**
 * 选择排序.<br><br>
 * 
 * 每一次从待排序的数据中取出最大或者最小的数,顺序的放在已排序好的数列最后,知道待排序的数组长度为1.
 * 
 * @author qinge
 * 
 */
public class SelectSort {

	public static void main(String[] args) {
		// 数组元
		int[] orgins = { 2, 1, 5, 4, 9, 8, 6, 7, 10, 3, 3 };

		// 排序前的数
		for (int num : orgins) {
			System.out.print(num + "、");
		}
		System.out.println();
		
		// 待排序数组中最大数的下标
		int maxIndex;

		// 控制待排序数组的长度,待排序数组为元数组的长度减去每次循环最大数之和
		for (int i = 1; i < orgins.length; i++) {

			maxIndex = 0;
			
			// 待排序数组为元数组每次去除最大数剩余的无序的数组
			for (int j = 1; j <= orgins.length - i; j++) {
				
				// 找出待排序数组中的最大一个,记录其数组下标
				if (orgins[j] > orgins[maxIndex]) {
					maxIndex = j;
				}
			}
			
			// 待排序数组中最后一位,即元数组中最靠近已找出最大数的前一位
			int temp = orgins[orgins.length - i];
			// 将其置换为当前最大数
			orgins[orgins.length - i] = orgins[maxIndex];
			// 将当前最大数下标位置的数置换
			orgins[maxIndex] = temp;
			
			// 排序前的数
			for (int num : orgins) {
				System.out.print(num + "、");
			}
			System.out.println();
		}

		// 排序后的数
		for (int num : orgins) {
			System.out.print(num + "、");
		}
	}

}

 

这些简单的排序方法都是一种经典啊