博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Flatten Binary Tree to Linked List 将二叉树转换为链表
阅读量:4107 次
发布时间:2019-05-25

本文共 559 字,大约阅读时间需要 1 分钟。

题目:

解答:

先序遍历,将遍历的值插入到尾指针。

注意如何将新根节点的值赋给原根节点。

代码:

class Solution {  public:	  TreeNode *newroot = NULL;	  TreeNode *last;	  void flatten(TreeNode *root) {		  if (root == NULL)			  return;		  newroot = new TreeNode(root->val);		  last = newroot;		  pre_order(root->left);		  pre_order(root->right);		  *root = *newroot;  //这里需要特殊注意	  }  private:	  void pre_order(TreeNode * root)	  {		  if (root == NULL)			  return;		  TreeNode *next = new TreeNode(root->val);		  last->right = next;		  last = next;		  pre_order(root->left);		  pre_order(root->right);	  }  };

转载地址:http://cytsi.baihongyu.com/

你可能感兴趣的文章
9 款你不能错过的 JSON 工具
查看>>
就在昨天,全球 42 亿 IPv4 地址宣告耗尽!
查看>>
卧槽!小姐姐用动画图解 Git 命令,这也太秀了吧?!
查看>>
厉害了!Python 编辑器界的神器 Jupyter ,推出官方可视化 Debug 工具!
查看>>
卧槽!Java 虚拟机竟然还有这些性能调优技巧...
查看>>
听说玩这些游戏能提升编程能力?
查看>>
再见,Eclipse...
查看>>
如果你还不了解 RTC,那我强烈建议你看看这个!
查看>>
沙雕程序员在无聊的时候,都搞出了哪些好玩的小玩意...
查看>>
当你无聊时,可以玩玩 GitHub 上这个开源项目...
查看>>
B 站爆红的数学视频,竟是用这个 Python 开源项目做的!
查看>>
安利 10 个让你爽到爆的 IDEA 必备插件!
查看>>
自学编程的八大误区!克服它!
查看>>
早知道这些免费 API,我就可以不用到处爬数据了!
查看>>
Java各种集合类的合并(数组、List、Set、Map)
查看>>
Mysql复制表以及复制数据库
查看>>
进程管理(一)
查看>>
linux 内核—进程的地址空间(1)
查看>>
存储器管理(二)
查看>>
Android中的Binder(二)
查看>>