当前位置: 首页 > news >正文

LeetCode103. Binary Tree Zigzag Level Order Traversal

文章目录

    • 一、题目
    • 二、题解

一、题目

Given the root of a binary tree, return the zigzag level order traversal of its nodes’ values. (i.e., from left to right, then right to left for the next level and alternate between).

Example 1:

Input: root = [3,9,20,null,null,15,7]
Output: [[3],[20,9],[15,7]]
Example 2:

Input: root = [1]
Output: [[1]]
Example 3:

Input: root = []
Output: []

Constraints:

The number of nodes in the tree is in the range [0, 2000].
-100 <= Node.val <= 100

二、题解

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:vector<vector<int>> zigzagLevelOrder(TreeNode* root) {vector<vector<int>> res;queue<TreeNode*> q;if(!root) return res;q.push(root);int level = 0;while(!q.empty()){int size = q.size();vector<int> tmp;while(size--){TreeNode* t = q.front();q.pop();tmp.push_back(t->val);if(t->left) q.push(t->left);if(t->right) q.push(t->right);}if(level % 2 == 1){reverse(tmp.begin(),tmp.end());res.push_back(tmp);}else res.push_back(tmp);level++;}return res;}
};
http://www.lryc.cn/news/253164.html

相关文章:

  • PHP 判断给定两个时间是否在同一周,月,年
  • 单机无锁线程安全队列-Disruptor
  • 好工具知多少:国内外最常用的SCADA软件
  • SQL Server 2016(创建数据库)
  • Vue学习计划--Vue2(一)简单了解vue
  • 微信小程序生成二维码并保存到本地方法
  • shell_exec 和 exec区别
  • WPF创建进度条
  • 全网最新最全面的Appium自动化:Appium常用操作之混合应用webview页面操作--待补充!
  • 基于OpenCV+YOLOv5实现车辆跟踪与计数(附源码)
  • 05、pytest断言确定的异常
  • 金蝶云星空单据编辑界面,不允许批量填充操作
  • Springboot项目启动成功后可通过五种方式继续执行
  • 什么是供应链金融分账系统?
  • 【测绘程序设计】——坐标换带与高程投影
  • 企业计算机服务器中了Mallox勒索病毒如何解密,Mallox勒索病毒数据恢复
  • 一套rk3588 rtsp服务器推流的 github 方案及记录 -01
  • PyQt6 QComboBox下拉组合框控件
  • 常用类与比较器
  • 【上海大学《面向对象程序设计A》课程小项目报告】抽象向量类模板及其派生类
  • Leetcode每日一题学习训练——Python3版(到达首都的最少油耗)
  • Java面试题(每天10题)-------连载(42)
  • netty websocket学习
  • 【数据结构】环形队列
  • 嵌入式C编码规范
  • Golang 并发 — 流水线
  • Elasticsearch:什么是非结构化数据?
  • 15:00的面试,15:06就出来了,问的问题过于变态了。。。
  • Web自动化测试怎么做?Web网页测试全流程解析
  • MySQL数据库SQLSTATE[22007]: Invalid datetime format 日期类型不能为空值的解决办法