面试题 04.03. 特定深度节点链表

思路:层次遍历

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/
class Solution {
public:vector<ListNode*> listOfDepth(TreeNode* tree) {vector<ListNode*> res;if(tree==NULL) return res;queue<TreeNode*> q;q.push(tree);while(!q.empty()){int size = q.size();ListNode* tmp = new ListNode(0);ListNode* Lnow = tmp;for(int i=0;i<size;i++){TreeNode* now = q.front();Lnow->next = new ListNode(now->val);Lnow = Lnow->next;q.pop();if(now->left) q.push(now->left);if(now->right) q.push(now->right);}if(tmp->next)res.push_back(tmp->next);}return res;}
};

面试题 04.03. 特定深度节点链表相关推荐

  1. leetcode面试题 04.03. 特定深度节点链表(bfs)

    给定一棵二叉树,设计一个算法,创建含有某一深度上所有节点的链表(比如,若一棵树的深度为 D,则会创建出 D 个链表).返回一个包含所有深度的链表的数组.示例:输入:[1,2,3,4,5,null,7, ...

  2. 程序员面试金典 - 面试题 04.03. 特定深度节点链表(BFS)

    1. 题目 给定一棵二叉树,设计一个算法,创建含有某一深度上所有节点的链表(比如,若一棵树的深度为 D,则会创建出 D 个链表).返回一个包含所有深度的链表的数组. 例: 输入:[1,2,3,4,5, ...

  3. leetcode —— 面试题 04.03. 特定深度节点链表

    给定一棵二叉树,设计一个算法,创建含有某一深度上所有节点的链表(比如,若一棵树的深度为 D,则会创建出 D 个链表).返回一个包含所有深度的链表的数组. 示例: 解题思路:使用常规的广度优先遍历就可以 ...

  4. 程序员面试金典:面试题 02.03. 删除中间节点

    1. 题目 面试题 02.03. 删除中间节点 2. 描述 实现一种算法,删除单向链表中间的某个节点(即不是第一个或最后一个节点),假定你只能访问该节点. 示例: 输入: 单向链表 a->b-& ...

  5. 程序员面试金典 - 面试题 02.03. 删除中间节点

    1. 题目 实现一种算法,删除单向链表中间的某个节点(除了第一个和最后一个节点,不一定是中间节点),假定你只能访问该节点. 示例: 输入:单向链表a->b->c->d->e-& ...

  6. 面试题 02.03. 删除中间节点

    2020-03-22 1.题目描述 删除中间节点 2.题解 之前好像做过这道题,直接将后一个节点的数据域赋值过来再删除后一个节点即可. 3.代码 class Solution { public:voi ...

  7. 面试题 04.01. 节点间通路

    面试题 04.01. 节点间通路 注意是有向图,用邻接表代替图,dfs或者bfs都可 class Solution { public:bool findWhetherExistsPath(int n, ...

  8. C++算法学习(力扣:面试题 04.04 检查平衡性)

    力扣:面试题 04.04 检查平衡性 实现一个函数,检查二叉树是否平衡.在这个问题中,平衡树的定义如下:任意一个节点,其两棵子树的高度差不超过 1. 示例 1: 给定二叉树 [3,9,20,null, ...

  9. AI公开课:19.04.03周明—MSRA副院长《NLP的进步如何改变搜索的体验》课堂笔记以及个人感悟

    AI公开课:19.04.03周明-MSRA副院长<NLP的进步如何改变搜索的体验>课堂笔记以及个人感悟 导读        周明博士,1999年加入微软研究院(MSRA).现任微软亚洲研究 ...

最新文章

  1. Java学习总结:45(字符编码)
  2. 使用python对学生表的查询_多表组合查询——Python操作Mysql数据库
  3. 皮一皮:中国好男友?
  4. ios中MKHorizMenu用法
  5. jQuery的Callback()方法
  6. 【小米面试题】-给定一个具体时间,计算时针与分针之间的角度
  7. mysql eager mode_MySQL Connector Net 6.6.5 Entity Framework 显式预加载 Eager Load Bug
  8. 想调试Angular框架的@HostBinding,应该在哪里设置断点
  9. Vue实现跑马灯效果以及封装为组件发布
  10. Redis学习笔记(三)
  11. 【原创】IDEA一定要改的八条配置
  12. nfc和红外线的区别_红外,蓝牙,WiFi,NFC区别及优缺点
  13. 前端 圆形进度图_Highcharts 圆形进度条式测量图
  14. 2个版本并存的python使用新的版本安装django的方法
  15. 传输层协议(10):滑动窗口(4)
  16. 2022届秋招笔试题小结:图
  17. HTML罗盘时钟代码
  18. 如何高效率的使用Google搜索
  19. Nodejs学习记录: koa2
  20. 2020-2022年最全各省、市矢量和栅格数据(土地利用、植被覆盖、土壤类型、人口密度、NPP、气象水文数据、路网、省市县乡镇区划边界、poi数据、河流水系、建筑轮廓)

热门文章

  1. 大数据_MapperReduce_Hbase的优化_RowKey设计原则---Hbase工作笔记0028
  2. k8s核心技术-资源编排(yaml)的编写方式---K8S_Google工作笔记0019
  3. SpringCloud工作笔记038---spring cloud微服务权限认证_终于确定下来大体的思想了
  4. 调试 acf 的时候发现问题
  5. 总结之《征服C指针》
  6. std::set, std::list, std::vector在erase的区别
  7. 实现时间排序_面试官:手撕十大排序算法,你会几种?
  8. JAVA编程规范总结
  9. ubuntu pycharm mysql_ubuntu安装mysql pycharm sublime
  10. Android闪退日志关键字,求助,简单UI界面,调试总是闪退,还没有LOG错误日志???...