在Java中,可以使用LinkedList
類來實現有序鏈表。首先,需要導入java.util.LinkedList
包。然后,創建一個自定義的鏈表類,繼承自LinkedList
,并重寫其中的添加元素方法(例如add()
),以便在添加新元素時保持鏈表的有序性。
下面是一個簡單的示例:
import java.util.LinkedList;
public class SortedLinkedList<E extends Comparable<E>> extends LinkedList<E> {
@Override
public boolean add(E element) {
if (isEmpty()) {
return super.add(element);
}
int index = 0;
for (E e : this) {
if (e.compareTo(element) > 0) {
break;
}
index++;
}
add(index, element);
return true;
}
public static void main(String[] args) {
SortedLinkedList<Integer> sortedList = new SortedLinkedList<>();
sortedList.add(5);
sortedList.add(3);
sortedList.add(7);
sortedList.add(1);
System.out.println(sortedList); // 輸出: [1, 3, 5, 7]
}
}
在這個示例中,我們創建了一個名為SortedLinkedList
的類,它繼承自LinkedList
。我們重寫了add()
方法,使其在添加新元素時保持鏈表的有序性。在main()
方法中,我們創建了一個SortedLinkedList
對象,并向其中添加了一些整數。最后,我們打印出排序后的鏈表。