TreeMap与HashMap最大的不同是TreeMap实现了SortedMap接口,对传入的Key进行排序
TreeMap内部使用红黑树算法,关于红黑树的资料网上很多
- put方法 : 先使用普通的BST(二叉搜索树)算法找到相应的插入位置,然后使用fixAfterInsertion(the new Entry);对插入的结点进行效正,重新恢复其红黑树的特性
- get方法:使用普通的BST查找算法
- remove:使用普通的BST算法找到待删除结点,使用fixAfterDeletion(the deleted Entry)重新恢复红黑树特性
除了内部使用RedBlackTree外,其他接口与HashMap相同
关于红黑树的具体算法参见MIT的《Introduction to algorithm》一书