/*
該程式建立和初始化了一個鏈表。reverseOrder()方法返回一個對Integer對象的比較進行逆向的Comparator函數。列表中元素按照這個比較函數進行排序並被顯示出來。接下來,調用shuffle()方法對列表進行隨機排列,然後顯示列表的最大值和最小值。
*/
//Demonstrate various algorithms.
import java.util.*;
class AlgorithmDemo{
public static void main(String[] args)
{
//Create and initialize linked list.
LinkedList ll = new LinkedList();
ll.add(new Integer(-9));
ll.add(new Integer(10));
ll.add(new Integer(-10));
ll.add(new Integer(9));
ll.add(new Integer(99));
ll.add(new Integer(100));
//Create a reverse order comparator.
Comparator r = Collections.reverseOrder();
//Sort list by using the comparator.
Collections.sort(ll,r);
//Get an iterator.
Iterator i = ll.iterator();
System.out.println("List sorted in reverse: ");
while(i.hasNext()){
System.out.println(i.next() + " ");
}
System.out.println();
Collections.shuffle(ll);
//Display randomized list
i = ll.iterator();
System.out.print("List shuffled: ");
while(i.hasNext()){
System.out.print(i.next() + " ");
}
System.out.println();
System.out.println("Minimum: " + Collections.min(ll));
System.out.println("Maximum: " + Collections.max(ll));
}
}