首页 > 代码库 > 逗比的睡眠排序大法

逗比的睡眠排序大法

睡眠排序也就是,让排序的元素当做线程sleep睡眠的时间,睡醒就输出~

元素越大,醒的越晚,输出的越晚,然后排序不就完成了?偷笑


package com.lean;

public class SleepSort {
	/*
	 * 数组中元素越大的值,sleep时间越长。sleep时间短的先输出
	 * 囧,排序的实际意义并不太大,时间太长了。乐乐就行了啊
	 */
    public static void main(String[] args) {
       int a[]={5,6,7,1,3,2,4,9,8};
       //创建睡眠线程
       SortThread t[]=new SortThread[a.length];
       //初始化睡眠线程
       for (int i = 0; i < t.length; i++) {
		t[i]=new SortThread(a[i]);
		t[i].start();
	}       
}
}
//sortThread是一个动态类,当做内部类的时候,加上static。否则放到作为外部类~~哈
class SortThread extends Thread{
	int ms;
	public SortThread(int ms){
		this.ms=ms;
	}
	@Override
	public void run() {
		super.run();
		try {
			sleep(ms*10+10);
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println(ms);
		
	}
	
}


逗比的睡眠排序大法