java 提供的排序效率 與TreeSet排序效率比較

int index = 100000000;
	Random random = new Random();
	ArrayList<Integer> list2 = new ArrayList<Integer>();
	for (int i = 0; i < index; i++) {
		list2.add(random.nextInt(99));
	}
	long currentTime = System.currentTimeMillis();
	Collections.sort(list2);
	long	useTime = System.currentTimeMillis() - currentTime;
System.out.println("數組用時=" + useTime);
 **Collections.sort(list2);	這個排序1億條數據。耗時26098毫秒**




	 int 	currentTime = System.currentTimeMillis();
	TreeSet<Integer> treeSet = new TreeSet<Integer>();
	for (int i = 0; i < index; i++) {
		treeSet.add(random.nextInt(99));
	}
long 	useTime = System.currentTimeMillis() - currentTime;
System.out.println("TreeSet用時=" + useTime);
**使用TreeMap排序1億條數據 總耗時 4770毫秒。**



	int index = 100000000;
	Random random = new Random();
	int[] list = new int[index];
	for (int i = 0; i < index; i++) {
		list[i] = random.nextInt(99);
	}
	long currentTime = System.currentTimeMillis();
	Arrays.sort(list);
	long useTime = System.currentTimeMillis() - currentTime;
	System.out.println("數組用時=" + useTime);
 		**Arrays.sort(list);這個方法排序1億條數據耗時   2379毫秒**
 		
插入排序,歸併排序,的效率比起java提供的 	Arrays.sort(list);  和Collections.sort(list2); 排序都相差甚遠。                      平 時開發中 最好使用系統提供的排序函數。	
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章