数据结构--力扣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;
}
相关推荐
霍霍的袁5 分钟前
【C++初阶】缺省参数(默认参数)详细讲解
开发语言·c++·算法
秦明月136 分钟前
电气安全回路设计实战:皮尔兹安全继电器应用
经验分享·笔记·安全·职场和发展·创业创新·学习方法
笑鸿的学习笔记11 分钟前
计算机笔记之沙盒(Sandbox)
笔记
计算机安禾11 分钟前
【算法分析与设计】第2篇:计算模型与渐进复杂性分析
算法
生成论实验室17 分钟前
事件、信息荷与六维态势空间——每一个事件都是一次空间的弯曲
人工智能·算法·语言模型·可信计算技术·安全架构
budingxiaomoli21 分钟前
递归,搜索与回溯算法--递归
算法
风味蘑菇干22 分钟前
Stream基础题目
java·算法
KaMeidebaby34 分钟前
卡梅德生物技术快报|真核蛋白表达信号肽筛选实验全流程复盘
服务器·前端·数据库·人工智能·算法
ljt272496066135 分钟前
Vue笔记(六)--响应式
javascript·vue.js·笔记
霍霍的袁42 分钟前
【C++初阶】函数重载详细讲解
开发语言·c++·算法