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;
}

分析:

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

总结:

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

相关推荐
舟舟亢亢5 小时前
算法总结——二叉树【hot100】(上)
java·开发语言·算法
weixin_477271696 小时前
根象:树根。基石。基于马王堆帛书《周易》原文及甲骨文还原周朝生活活动现象(《函谷门》原创)
算法·图搜索算法
普通网友6 小时前
多协议网络库设计
开发语言·c++·算法
努力努力再努力wz6 小时前
【Linux网络系列】:TCP 的秩序与策略:揭秘传输层如何从不可靠的网络中构建绝对可靠的通信信道
java·linux·开发语言·数据结构·c++·python·算法
daxi1507 小时前
C语言从入门到进阶——第9讲:函数递归
c语言·开发语言·c++·算法·蓝桥杯
winfreedoms7 小时前
ROS2语音&ai与控制——黑马程序员ROS2课程上课笔记(6)
人工智能·笔记
执于代码7 小时前
IEDA工具总结笔记
笔记
持续学习的程序员+18 小时前
强化学习Q-chunking算法
算法
Polaris北8 小时前
第二十七天打卡
开发语言·c++·算法
风吹乱了我的头发~8 小时前
Day30:2026年2月20日打卡
算法