数据结构--力扣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;
}
相关推荐
Lyyaoo.6 小时前
【动态规划】【待更新】
java·数据结构·算法
AgentMaster6 小时前
开源智能客服系统技术对比:从架构设计到生产部署的实战指南
大数据·人工智能·算法
我不会起名字3226 小时前
一天一道算法题(35):电话号码的字母组合
java·数据结构·后端·python·leetcode·go·回溯
小叶肥辉6 小时前
LangChain链和LangGraph图的学习笔记【六】——提示语模板(3)——Few-Shot Prompting(少样本提示) 模板类
笔记·python·学习·langchain·prompt·aigc
weixin_307779136 小时前
C++代码实现MATLAB中的ode23t函数功能
开发语言·c++·算法·matlab
wuminyu6 小时前
Markword在紧凑对象头上的实现原理剖析
java·linux·c语言·jvm·c++
萧西待水6 小时前
奥赛一本通 1451 棋盘游戏
算法·宽度优先
Niuguangshuo6 小时前
论文解读:Paraformer,非自回归中文 ASR 的并行 Transformer
算法·音视频·语音识别
潘潘的嵌入式日记6 小时前
位操作怎么写才不出错?置位、清位、翻转、取位一次讲清
c语言·嵌入式·寄存器·位操作
鹿角片ljp6 小时前
LeetCode 78:子集|回溯、选与不选、递归和path快照
java·数据结构·算法