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

分析:

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

总结:

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

相关推荐
结城明日奈是我老婆1 天前
stm32的TIM和PWM学习笔记
笔记·stm32·学习
nice_lcj5201 天前
排序(2)-选择排序专题——简单选择排序与堆排序的结构优化
数据结构·算法·排序算法
nice_lcj5201 天前
排序(4)-归并排序专题——归并排序的分治美学
java·数据结构·算法·排序算法
上海观智网络1 天前
健身房瑜伽馆想开发小程序,上海靠谱服务商怎么选?
经验分享·笔记
leo_yu_yty1 天前
Go语言分布式计算(并发Debug)
开发语言·笔记·后端·golang
洛水水1 天前
【力扣100题】83.最小栈
算法·leetcode·职场和发展
nice_lcj5201 天前
排序(3)-第三篇:交换排序专题——从冒泡排序到快速排序的效率飞跃
java·数据结构·算法·排序算法
San813_LDD1 天前
[深度学习]量化研究_ML_Lesson2
笔记
数智工坊1 天前
周志华《Machine Learning》学习笔记--第十六章--强化学习
笔记·学习·机器学习
ywl4708120871 天前
数据结构之链表反转算法
数据结构·算法·链表