Leetcode 1028. 从先序遍历还原二叉树(DAY 21)(划开新时代 Hard第一题 Hard含题解)
发布日期:2021-06-30 22:24:26
浏览次数:2
分类:技术文章
本文共 1287 字,大约阅读时间需要 4 分钟。
原题题目
代码实现(有全局变量 绝大部分自解 极小部分看解)
/** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; *///记录字符串暂时位置int pos;struct TreeNode* helper(char* S,struct TreeNode* root,int level){ int templevel = 0,number = 0; while(S[pos] == '-' && S[pos] != NULL) //计算当前层数 { templevel++; pos++; } if(!S[pos] || level != templevel) { //对于不符合层数条件则说明 字符串已提前移位 //则需要回到之前位置 减回去 if(level != templevel) pos -=templevel; return NULL; } //ASCII码值只能表示0-9 对于两位数及以上则只能以下面方式计算 while(S[pos] >= '0' && S[pos] <= '9') number = number*10 + S[pos++] - '0'; root = (struct TreeNode*)malloc(sizeof(struct TreeNode)); root->val = number;//赋值 root->left = helper(S,root->left,level+1);//递归得到左右子树 root->right = helper(S,root->right,level+1);//递归得到左右子树 return root;}struct TreeNode* recoverFromPreorder(char * S){ if(!strlen(S)) return NULL; pos = 0;//初始化全局变量 struct TreeNode* root = helper(S,root,0); return root;}
闲谈
对于每道Leetcode Hard都打算写题解了 最近在准备期末考试 比如线代 0基础到2天网课 奇迹冲完 比如高数 也是只有2天时间 学完hhhh 真的是挑战极限哈 结果发现计算机导论 感谢曾经的自己学过 汇编 和部分的CSAPP 对于考的很难的导论 自己复习起来也并没有像其他同学那么吃力 还甚至当了波小老师hhhh 所以最近做题的速度就慢了很多 寒假希望图书馆还会开门 然后就可以安心补上进度了嗷
转载地址:https://love6.blog.csdn.net/article/details/112409585 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
表示我来过!
[***.240.166.169]2024年04月09日 10时11分56秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
arm-linux-insight的使用
2019-04-30
Ubuntu12.10下安装sun-java6-jre jdk
2019-04-30
GNU ARM Eclipse Plug-in for Eclipse
2019-04-30
用eclipse导入uboot工程
2019-04-30
U-boot用tftp命令直接烧写到NandFlash V1.0
2019-04-30
U-boot用tftp命令直接烧写到NandFlash V2.0
2019-04-30
Ubuntu 12.10 禁用来宾账户和远程登录开启root用户登录
2019-04-30
Ubuntu 给eclipse添加桌面图标
2019-04-30
Theme.AppCompat.Light.Dialog的背景是Launcher的问题
2019-04-30
Ubuntu下root用户锁定屏幕(需要输入密码)
2019-04-30
U-boot用tftp命令直接烧写到NandFlash V3.0
2019-04-30
在U-boot上搭建TFTP服务器
2019-04-30
github中的README.md快速布局和换行
2019-04-30
基于U-boot上TFTP服务器更新系统
2019-04-30
基于v4l2的webcam应用, 本地预监(编译过程)
2019-04-30
基于v4l2 ffmpeg x264的视频远程监控(附上编译好的库文件)
2019-04-30
Ubuntu下安装usbview
2019-04-30
H.264开源解码器评测
2019-04-30
用vlc搭建简单流媒体服务器(UDP和TCP方式)
2019-04-30