Java中TreeSet的學習

增刪改查時間複雜度爲log(n),詳細學習推薦:

Java 集合系列17之 TreeSet詳細介紹(源碼解析)和使用示例


// 實現代碼
import java.util.Iterator;
import java.util.TreeSet;

public class TestTreeSet {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		TreeSet<Integer> set = new TreeSet<>();
		set.add(3);
		set.add(5);
		set.add(4);
		set.add(1);
		set.add(2);
		for(Iterator it = set.iterator(); it.hasNext();) {
			System.out.print((Integer)it.next() + (it.hasNext() ? ", " : ""));
		}
		System.out.println();
		// 逆向遍歷
		for(Iterator it = set.descendingIterator(); it.hasNext();) {
			System.out.print((Integer)it.next() + (it.hasNext() ? ", " : ""));
		}
		System.out.println();
		
		//取集合中第一個和最後一個元素
		System.out.println("first: " + set.first() + ", last: " + set.last());
		
		// <, >, <=, >=
		System.out.println("lower: " + set.lower((Integer)3));
		System.out.println("higher: " + set.higher((Integer)3));
		System.out.println("floor: " + set.floor((Integer)3));
		System.out.println("ceil: " + set.ceiling((Integer)3));
		
		Integer a[] = (Integer[])set.toArray(new Integer[0]);
		for(int i = 0; i < set.size(); ++i) {
			System.out.print(a[i] + ", ");
		}
		System.out.println();
		
		//刪除並返回第一個元素(最後一個元素)
		System.out.println("pollFirst: " + set.pollFirst() + ", pollLast: " + set.pollLast());
		set.remove((Integer)3);
		for(Iterator it = set.iterator(); it.hasNext();) {
			System.out.print((Integer)it.next() + (it.hasNext() ? ", " : ""));
		}
		System.out.println();
		
	}

}


繼續加油~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章