leetcode做题笔记144. 二叉树的前序遍历

给你二叉树的根节点 root ,返回它节点值的 前序 遍历。

思路一:递归

c语言解法

cpp 复制代码
void preorder(struct TreeNode* root, int* res, int* resSize) {
    if (root == NULL) {
        return;
    }
    res[(*resSize)++] = root->val;
    preorder(root->left, res, resSize);
    preorder(root->right, res, resSize);
}

int* preorderTraversal(struct TreeNode* root, int* returnSize) {
    int* res = malloc(sizeof(int) * 2000);
    *returnSize = 0;
    preorder(root, res, returnSize);
    return res;
}

分析:

本题要输出二叉树的前序遍历,可以利用递归先返回根节点,不断列举二叉树的左子树,再列举右子树即可解决问题

总结:

本题考察二叉树的前序遍历问题,利用递归可以解决

相关推荐
fie888914 分钟前
NSCT(非下采样轮廓波变换)的分解和重建程序
算法
晨晖21 小时前
单链表逆转,c语言
c语言·数据结构·算法
清风一徐1 小时前
禅道从18.3升级到21.7.6版本
笔记
Jack___Xue1 小时前
LangChain实战快速入门笔记(六)--LangChain使用之Agent
笔记·langchain·unix
YoungHong19922 小时前
面试经典150题[072]:从前序与中序遍历序列构造二叉树(LeetCode 105)
leetcode·面试·职场和发展
零度@2 小时前
SQL 调优全解:从 20 秒到 200 ms 的 6 步实战笔记(附脚本)
数据库·笔记·sql
im_AMBER2 小时前
Leetcode 78 识别数组中的最大异常值 | 镜像对之间最小绝对距离
笔记·学习·算法·leetcode
鼾声鼾语3 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab
其美杰布-富贵-李3 小时前
HDF5文件学习笔记
数据结构·笔记·学习
LYFlied3 小时前
【每日算法】LeetCode 25. K 个一组翻转链表
算法·leetcode·链表