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

树和二叉树_7

树和二叉树_7

  • 一、leetcode-102
  • 二、题解
    • 1.引库
    • 2.代码


一、leetcode-102

二叉树的层序遍历
给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。

请添加图片描述

样例输入:root = [3,9,20,null,null,15,7]

样例输出: [[3],[9,20],[15,7]]


二、题解

1.引库

 #include <iostream>#include <cstdio>#include <cstdlib>#include <queue>#include <stack>#include <algorithm>#include <string>#include <map>#include <set>#include <vector>using namespace std;

2.代码

/*** 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>> levelOrder(TreeNode* root) {if(root==NULL) return vector<vector<int>>();TreeNode *node;queue<TreeNode *> q;q.push(root);vector<vector<int>> ans;while(!q.empty()){int cnt=q.size();vector<int> temp;for(int i=0;i<cnt;i++){node=q.front();temp.push_back(node->val);if(node->left) q.push(node->left);if(node->right) q.push(node->right);q.pop();}ans.push_back(temp);}return ans;}//使用栈进行深度搜索实现层序遍历void dfs(TreeNode* root,int k,vector<vector<int>> &ans){if(root==NULL) return ;if(k==ans.size()) ans.push_back(vector<int>());//如果k=数组的数量,说明是本层中第一个访问到的节点ans[k].push_back(root->val);dfs(root->left,  k+1,ans);dfs(root->right, k+1,ans);return ;}vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int>> ans;dfs(root,0,ans); //0是树的层数 return ans;}
};
http://www.lryc.cn/news/533505.html

相关文章:

  • 不同标签页、iframe或者worker之间的广播通信——BroadcastChannel
  • 开源CodeGPT + DeepSeek-R1 是否可以替代商业付费代码辅助工具
  • AUTOSAR汽车电子嵌入式编程精讲300篇-基于FPGA的CAN FD汽车总线数据交互系统设计
  • STC51案例操作
  • 多光谱技术在华为手机上的应用发展历史
  • C语言:函数栈帧的创建和销毁
  • NLP_[2]_文本预处理-文本数据分析
  • 【工具篇】深度揭秘 Midjourney:开启 AI 图像创作新时代
  • 从O(k*n)到O(1):如何用哈希表终结多层if判断的性能困局
  • 视频采集卡接口
  • 蓝桥杯真题 - 像素放置 - 题解
  • vue基础(三)
  • 使用Python开发PPTX压缩工具
  • ubuntu24.04安装布置ros
  • SQL 秒变 ER 图 sql转er图
  • 【AI知识点】如何判断数据集是否噪声过大?
  • 网络安全治理架构图 网络安全管理架构
  • 如何写出优秀的单元测试?
  • 数据留痕的方法
  • 机器学习数学基础:19.线性相关与线性无关
  • ArgoCD实战指南:GitOps驱动下的Kubernetes自动化部署与Helm/Kustomize集成
  • JVM虚拟机以及跨平台原理
  • 【AIGC提示词系统】基于 DeepSeek R1 + ClaudeAI 易经占卜系统
  • 电路笔记 : opa 运放失调电压失调电流输入偏置电流 + 反向放大器的平衡电阻 R3 = R1 // R2 以减小输出直流噪声
  • ScrapeGraphAI颠覆传统网络爬虫技术
  • 通过多层混合MTL结构提升股票市场预测的准确性,R²最高为0.98
  • java将list转成树结构
  • 互联网分布式ID解决方案
  • xinference 安装(http导致错误解决)
  • 334递增的三元子序列贪心算法(思路解析+源码)