数据结构

算法013_树

2024-01-12  本文已影响0人  为宇绸缪

树形结构

相关概念

二叉树

满二叉树和完全二叉树

满二叉树


满二叉树

完全二叉树


完全二叉树

非完全二叉树


非完全二叉树 非完全二叉树

二叉树的存储方式
链式存储方式、顺序存储方式

这里使用顺序存储方式(列表)


二叉树的值与列表序号对应关系

父节点和左孩子节点的编号下标有什么关系? i --> 2i + 1

父亲节点 9 左孩子节点 8: 列表序号对应 0 --> 1
父亲节点 8 左孩子节点 6: 列表序号对应 1 --> 3
父亲节点 7 左孩子节点 0: 列表序号对应 2 --> 5
父亲节点 6 左孩子节点 2: 列表序号对应 3 --> 7
父亲节点 5 左孩子节点 3: 列表序号对应 4 --> 9

父节点和右孩子节点的编号下标有什么关系? i --> 2i + 2

父亲节点 9 右孩子节点 7: 列表序号对应 0 --> 2
父亲节点 8 右孩子节点 5: 列表序号对应 1 --> 4
父亲节点 7 右孩子节点 1: 列表序号对应 2 --> 6
父亲节点 6 右孩子节点 4: 列表序号对应 3 --> 8

孩子找父亲节点:假设孩子节点是 i,父亲节点是 (i - 1)// 2

左孩子节点 8 父亲节点 9: 列表序号对应关系 (1 - 1) // 2 = 0
右孩子节点 7 父亲节点 9: 列表序号对应关系 (2 - 1) // 2 = 0
左孩子节点 6 父亲节点 8: 列表序号对应关系 (3 - 1) // 2 = 1
右孩子节点 5 父亲节点 8: 列表序号对应关系 (4 - 1) // 2 = 1
上一篇下一篇

猜你喜欢

热点阅读