19.5 树集
前面讲过链表、数组列表、散列表、散列集,本节将讲述另一种数据结构:树集。树集这种数据结构用在什么情况下?它与前面几种数据结构有什么区别?本节通过实例讲述树集这种数据结构,并逐个解答上面的问题。
19.5.1 什么是树集
树集有点像散列集,但与散列集不同,树集是一种有序的数据结构。树集可以使用任何次序在这种数据结构中添加元素。当遍历时,元素出现次序是有序的。不过这种次序由系统自动完成。
那么系统如何对其进行自动排序?系统在每添加一个元素时,将按照字典顺序比较相应的字符串,按升序的方式来完成排序。
注意
使用树集这种数据结构的对象,必须要实现Comparable接口,只有实现了这种接口的对象,才能调用Comparable接口中的CompareTo()方法来排序。
还是先看看树集的构造器和常用的方法函数。树集的构造器方法如下所示:❑TreeSet()
创建一个空的树集对象。
❑TreeSet(collection c)
创建一个树集对象,并且通过指定的比较器给它的元素排序。
❑TreeSet(sortedSet element)
创建一个树集,并把有序集element的所有元素插入树中。它使用与有序集element相同的元素比较器。
树集的常用方法函数如下所示:
❑boolean add(object o):添加一个对象元素到树集中去。
❑boolean remove(object o):从树集中删除一个对象元素。
读者在学习树集的同时,可以自行将树集与前面所学习的几种数据结构进行比较,看看它们之间的相同点和不同点。这样,才能知道在什么场合下,使用哪种数据结构最好。