我正在寫一個Java應用程序。我有一個名爲Node的類。我創建了一個ArrayList對象並在其中添加一些節點。 ,每個節點都有一個整數數據和一個雙重概率。我想要按照它們的概率對arrayList中的節點進行排序。我寫了下面的方法:寫一個快速排序的幫助
private void sort(ArrayList<Node> list2) {
int n = list2.size();
for (int i = 1; i < n; i++) {
int m = list2.get(i);
int j = i - 1;
while ((j >= 0) && (list2.get(j).prob > m.prob))
list2.set(j + 1, list2.get(j--));
list2.set(j + 1, m);
}
}
但它不是一個快速的排序方法。我怎樣才能更快地排序?爲了達到這個目的,我可以在java中使用Collections.sort()方法嗎?怎麼樣 ?你能指導我嗎?
+1,給出了實現Comparable的代碼示例。 – Ibrahim 2010-12-17 14:05:35
感謝您的明智回答 – 2010-12-17 16:49:48