/*
该程序创建和初始化了一个链表。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));
}
}