leetcode117
时间:2019-12-11
本文章向大家介绍leetcode117,主要包括leetcode117使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本题和leetcode116的区别是,116题是完全二叉树,本题是普通二叉树(不一定是完全二叉树)。
但当初做116题的时候,并没有使用完全二叉树这个条件,因此当初的解决方案,完全适用于本题。
1 class Solution { 2 public: 3 Node* connect(Node* root) { 4 if (root != NULL) 5 { 6 queue<Node*> Q; 7 root->next = NULL; 8 Q.push(root); 9 while (!Q.empty()) 10 { 11 vector<Node*> V; 12 while (!Q.empty()) 13 { 14 Node* t = Q.front(); 15 Q.pop(); 16 if (t->left != NULL) 17 { 18 V.push_back(t->left); 19 } 20 if (t->right != NULL) 21 { 22 V.push_back(t->right); 23 } 24 } 25 V.push_back(NULL); 26 for (int i = V.size() - 1; i > 0; i--) 27 { 28 V[i - 1]->next = V[i]; 29 } 30 for (int i = 0; i < V.size() - 1; i++) 31 { 32 if (V[i] != NULL) 33 { 34 Q.push(V[i]); 35 } 36 } 37 } 38 } 39 return root; 40 } 41 };
原文地址:https://www.cnblogs.com/asenyang/p/12021690.html
- ASP.NET Core的路由[5]:内联路由约束的检验
- .NET Core跨平台的奥秘[下篇]:全新的布局
- Equation Group泄露文件分析
- ModelBinder——ASP.NET MVC Model绑定的核心
- 一句代码实现批量数据绑定[下篇]
- 三种属性操作性能比较:PropertyInfo + Expression Tree + Delegate.CreateDelegate
- 解密Myspace密码的姿势
- weblogic安全配置二三事
- 开发自己的Data Access Application Block[下篇]
- 【CSS】格仔背景
- 这年头真的还有USB设备是安全的吗?
- js的动态加载、缓存、更新以及复用(一)使用范围:遇到的问题:目标:页面结构:正文
- js的动态加载、缓存、更新以及复用(二)恼人的命名冲突
- 以【猫叫、老鼠跑、主人醒】为例子,使用 javascript 来实现 观察者模式 (有在线演示)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Flutter 实现网易云音乐字幕的代码
- Yii框架通过请求组件处理get,post请求的方法分析
- PHP实现单文件、多个单文件、多文件上传函数的封装示例
- Android自定义控件单位尺寸实现代码
- Android中socket通信的简单实现
- Thinkphp5框架使用validate实现验证功能的方法
- Android通过Java sdk的方式接入OpenCv的方法
- php+js实现的无刷新下载文件功能示例
- Android如何获取视频首帧图片
- PHP单文件上传原理及上传函数的封装操作示例
- php中错误处理操作实例分析
- Android 百度地图定位实现仿钉钉签到打卡功能的完整代码
- Thinkphp5框架实现图片、音频和视频文件的上传功能详解
- Android使用Opengl录像时添加水印
- Laravel使用Queue队列的技巧汇总