紅黑樹的閾值是8,當鏈表大於等於8時鏈表變成了紅黑樹結構,大大減少了查找的時間。
當長度低於6時會由紅黑樹轉成鏈表,TreeNodes占用空間是普通Nodes的兩倍,所以只有當bin包含足夠多的節點時才會轉成TreeNodes,而是否足夠多就是由TREEIFY_THRESHOLD的值決定的,當bin中節點數變少時,又會轉成普通的bin,這樣就解析了為什么不是一開始就將其轉換為TreeNodes,而是需要一定節點數才轉為TreeNodes,說白了就是trade-off,空間和時間的權衡。
紅黑樹的閾值是8,當鏈表大於等於8時鏈表變成了紅黑樹結構,大大減少了查找的時間。
當長度低於6時會由紅黑樹轉成鏈表,TreeNodes占用空間是普通Nodes的兩倍,所以只有當bin包含足夠多的節點時才會轉成TreeNodes,而是否足夠多就是由TREEIFY_THRESHOLD的值決定的,當bin中節點數變少時,又會轉成普通的bin,這樣就解析了為什么不是一開始就將其轉換為TreeNodes,而是需要一定節點數才轉為TreeNodes,說白了就是trade-off,空間和時間的權衡。
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。