您的当前位置:首页正文

选择排序(java)

2024-11-30 来源:个人技术集锦
public class SelectionSort {

	/**
	 * 选择排序
	 * by o(∩_∩)o...雪
	 */
	public static void main(String[] args) {
		int a[] = {33,32,43,54,65,26,25,75,11,99};
		
		System.out.print("选择排序初始数组:");		/*输出初始数组*/
		for(int i=0;i<a.length;i++)
		{
			System.out.print(" "+a[i]);
		}
		System.out.println();
											/*选择排序*/
		for(int k=0;k<a.length-1;k++)		//n趟遍历
		{
			int num = k;
			int max = a[k];
			for(int i=k+1;i<a.length;i++)		//选出第k趟遍历中的最大值
			{
				if(a[i]>max)
				{
					max = a[i];
					num = i;
				}
			}
			int temp;				/*将最大数与第k个数交换*/
			temp = a[k];
			a[k] = max;
			a[num] = temp;
									/*输出每一趟排序后的结果*/
			System.out.print("第"+(k+1)+"趟排序结果:       ");
			for(int i=0;i<a.length;i++)
			{
				System.out.print(" "+a[i]);
			}
			System.out.println();
		}
		
		System.out.print("选择排序后的数组:");		/*输出排序后的数组*/
		for(int i=0;i<a.length;i++)
		{
			System.out.print(" "+a[i]);
		}
	}
}


结果:

显示全文