摘要: 我们回忆一下AVL树,它在插入和删除节点时,总要保证任意节点左右子树的高度差不超过1。正是因为有这样的限制,插入一个节点和删除一个节点都有可能调整多个节点的不平衡状态。频繁的左旋转和右旋转操作一定会影响整个AVL树的性能,除非是平衡与不平衡变化很少的情况下,否则AVL树所带来的搜索性能提升不足以弥补 阅读全文
posted @ 2020-01-26 14:28 我脱下短袖 阅读(755) 评论(0) 推荐(0) 编辑
摘要: 学习过2 3树之后就知道应怎样去理解红黑树了,如果直接看「算法导论」里的红黑树的性质,是看不出所以然。我们也看看一颗二分搜索树满足红黑的性质: 1.每个节点或是红色的,或是黑色的; 2.根节点是黑色的; 3.每个叶子节点(NIL)是黑色的; 4.如果一个节点是红色的,则它的两个子节点都是黑色的; 5 阅读全文
posted @ 2020-01-26 14:24 我脱下短袖 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 画了一系列树的动画,从二分搜索树,到AVL树,再到2 3树,再到基于2 3树的红黑树,都可以发现这些树都跟二叉查找树很像啊。 嘿嘿!二分搜索树就是二叉查找树;AVL树也是一颗二分搜索树,只多了高度差的限制;2 3树虽满足二分搜索树的性质,但不是一颗二分搜索树,2 3树由2 节点和3 节点组成的,满足 阅读全文
posted @ 2020-01-26 14:16 我脱下短袖 阅读(136) 评论(0) 推荐(0) 编辑