Discuss / Java / 打卡

打卡

Topic source
package com.itranswarp.learnjava;

import java.util.Arrays;

/**
 * 降序排序
 */
public class Main {
	public static void main(String[] args) {
		int[] ns = { 28, 12, 89, 73, 65, 18, 96, 50, 8, 36 };
		// 排序前:
		System.out.println(Arrays.toString(ns));
		// TODO:
		// 排序后:
		//每一轮最小的放在最右边
		//类似
		//*****
		//****
		//***
		//**
		//*
		boolean exchange;
		for(int i=0;i<ns.length-1;i++) {
		    //优化 若在某一趟排序中未发现数据位置的交换,则说明待排序的无序区中所有的项均已满足排序后的结果。
		    exchange = false;
		    for(int j=0;j<ns.length-i-1;j++) {
		        if(ns[j]<ns[j+1]) {
		            int tmp=ns[j];
		            ns[j]=ns[j+1];
		            ns[j+1]=tmp;
		            exchange = true;
		        }
		    }
		    if(!exchange) return;
		}
		System.out.println(Arrays.toString(ns));
		//数组相等判断使用equals方法
		if (Arrays.toString(ns).equals("[96, 89, 73, 65, 50, 36, 28, 18, 12, 8]")) {
			System.out.println("测试成功");
		} else {
			System.out.println("测试失败");
		}
	}
}


  • 1

Reply