数据结构--力扣144.二叉树的前序遍历(C

链接:. - 力扣(LeetCode)【点击即可跳转】

使用c语言来实现。

代码展示为:

复制代码
/**
 * Note: The returned array must be malloced, assume caller calls free().
 */
 int TreeSize( struct TreeNode* root)
{
    return root==NULL?0:TreeSize(root->left)+TreeSize(root->right)+1;
}
void _prevOrder( struct TreeNode*root,int* a,int* pi)
{
    if(root==NULL)
    {
        return;
    }
    a[*pi]=root->val;
    ++(*pi);
    _prevOrder(root->left,a,pi);
    _prevOrder(root->right,a,pi);
}

int* preorderTraversal( struct TreeNode* root, int* returnSize)
{
    int size=TreeSize(root);
    int* a=(int*)malloc(size*sizeof(int));
    int i=0;
    _prevOrder(root,a,&i);

    *returnSize=size;
    return a;
}
相关推荐
Zevalin爱灰灰2 小时前
现代密码学 第二章——流密码【下】
算法·密码学
飞Link4 小时前
大模型长文本的“救命稻草”:深度解析 TurboQuant 与 KV Cache 压缩技术
算法
U盘失踪了4 小时前
【笔记】Flask 用 session 对象存储用户状态
笔记
郝学胜-神的一滴5 小时前
深度学习优化核心:梯度下降与网络训练全解析
数据结构·人工智能·python·深度学习·算法·机器学习
Je1lyfish5 小时前
CMU15-445 (2025 Fall/2026 Spring) Project#3 - QueryExecution
linux·c语言·开发语言·数据结构·数据库·c++·算法
许彰午5 小时前
03-二叉树——从递归遍历到非递归实现
java·算法
Brilliantwxx5 小时前
【C++】 vector(代码实现+坑点讲解)
开发语言·c++·笔记·算法
墨染千千秋7 小时前
C/C++ Keywords
c语言·c++
NorburyL7 小时前
DPO笔记
深度学习·算法
老纪的技术唠嗑局7 小时前
深度解析 LLM Wiki / Obsidian-Wiki / GBrain:Agent 时代知识的“自组织”与“自进化”
大数据·数据库·人工智能·算法