设一棵完全二叉树中有500个结点,则该二叉树的深度为多少?若用二叉链表作为该完全二叉树的存储结构,则共

如图

完全二叉树(存在单分支)对应的二叉链表

求空指针域即求先孩子结点个数×2再+1(此处的1就是单分支结点的空指针域)

深度为9的完全二叉树前8层是满二叉树,共2⁸-1=255个结点

第9层有500-255=245个结点(245为奇数可知其父结点一定有单分支),其父结点个数为244/2+1=123(其中有一个单分支结点)

第8层有2⁷=128个结点,其中叶子结点个数128-123=5(不明白看下图)

所以空指针域个数=245×2+5×2+1=501个

纯手打不容易,希望有帮助

猜你喜欢

转载自www.cnblogs.com/chenxiansen/p/12076707.html
今日推荐