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

分析:

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

总结:

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

相关推荐
im_AMBER9 小时前
Leetcode 119 二叉树展开为链表 | 路径总和
数据结构·学习·算法·leetcode·二叉树
Eloudy9 小时前
SuiteSparse 的 README
人工智能·算法·机器学习·hpc
liuchangng10 小时前
OpenCode AI编程工具笔记_20260212115022
笔记·ai编程
苏荷水10 小时前
万字总结LeetCode100(持续更新...)
java·算法·leetcode·职场和发展
gihigo199810 小时前
MATLAB运动估计基本算法详解
开发语言·算法·matlab
hetao173383710 小时前
2026-02-09~02-12 hetao1733837 的刷题记录
c++·算法
ADDDDDD_Trouvaille10 小时前
2026.2.12——OJ72-74题
c++·算法
励ℳ10 小时前
机器学习-LASSO算法指南
人工智能·算法·机器学习
Coisinilove10 小时前
MATLAB学习笔记——第二章
笔记·学习·matlab