欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

回顾篇之Java选择排序

程序员文章站 2022-07-14 09:45:42
...

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


回顾篇之Java选择排序
            
    
    博客分类: 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 + "、");
		}
	}

}

 

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


 

  • 回顾篇之Java选择排序
            
    
    博客分类: Java Java选择排序 
  • 大小: 25.5 KB
相关标签: Java 选择排序