day13

1.二叉树前中后序遍历(深度优先搜索):采用递归法思路更清晰,首先确定递归函数的返回值和参数(TreeNode* root, vector<int> &amp; vec),然后确定递归的终止条件(当遍历到空指针的时候),最后确定递归结构体(直接把结果放入数组、遍历左节点、遍历右节点这三个执行的顺序决定了前中后)。
2.二叉树的前中后序(迭代法):迭代法的思路更复杂,前后序的解法类似,中序则不一样。
3.二叉树的层序遍历:采用队列将二叉树每一层的结点入队,并记录队列的大小(一层的结点个数),当遍历到该节点时,首先将当前节点的值放入结果数组中,然后再将其左右节点入队。(所以在开始出队前,需要记录队列的大小,从而控制每次出队的元素是一层的结点个数)。
全部评论

相关推荐

不愿透露姓名的神秘牛友
今天 12:20
点赞 评论 收藏
分享
06-10 23:36
已编辑
首都经济贸易大学 C++
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 11:16
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务