1. 程式人生 > >對公司員工年齡進行排序,java實現

對公司員工年齡進行排序,java實現

要求:對公司的員工年齡進行排序,員工人數大約萬名左右,可使用常量大小的輔助空間,要求時間效率為O(n)。

實現思路:使用一個額外的輔助陣列用來記錄同齡的員工數目。

實現如下:

public static void sort(int []ages){
		int oldestAge=100;
		int []timesOfAges=new int[oldestAge];
		
		int len=ages.length;
		for(int i=0;i<len;i++){
			timesOfAges[ages[i]]++;;
		}

		
		//排序
		int index=0;
		for(int i=0;i<oldestAge;i++){
			for(int j=0;j<timesOfAges[i];j++){
				
				ages[index]=i;
				index++;
			}
		}
		
	
	}