day13

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

相关推荐

想干测开的tomca...:这份简历是“大一新生硬凹资深后端”的典型反面教材,槽点离谱到能让面试官直接笑出声: ### 1. 「年龄+入学时间」和项目复杂度完全脱节,可信度直接归0 你2024年7月才入学(现在刚读了1年多),19岁的大一新生,能把Vue3+Spring Boot+ShardingSphere+K8s+AI这些技术全塞进两个项目里?别说实际开发,光把这些技术的文档看完都得半年——这不是“能力强”,是“把招聘JD里的技术词全抄过来造假”,明摆着没碰过实际代码
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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