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

leetcode刷题日记——二叉树的层次遍历

[ 题目描述 ]:
在这里插入图片描述
[ 思路 ]:

  • BFS,利用队列特性完成对树的层次遍历
  • 运行如下
    在这里插入图片描述
int** levelOrder(struct TreeNode* root, int* returnSize, int** returnColumnSizes) {if (!root) {*returnSize = 0;return NULL;}struct TreeNode* queue[2000];int** res = (int**)malloc(2000*sizeof(int*));*returnColumnSizes = (int*)malloc(2000*sizeof(int));int front = 0, rear = 0;*returnSize = 0;queue[rear++] = root;while (front < rear) {int sum = rear - front;res[*returnSize] = (int*)malloc(sum*sizeof(int));(*returnColumnSizes)[*returnSize] = sum;for (int i = 0; i < sum; i++) {struct TreeNode* node = queue[front++];res[*returnSize][i] = node->val;if (node->left) {queue[rear++] = node->left;}if (node->right) {queue[rear++] = node->right;}}(*returnSize)++;}return res;
}

[ 官方题解 ]:

  • 广度优先遍历:基本同上
http://www.lqws.cn/news/81847.html

相关文章:

  • 全文索引详解及适用场景分析
  • 【Unity】云渲染
  • Ubuntu22.04 安装 CUDA12.8
  • 为什么ping显示connect:network is unreachable,如何排查网络不通问题?
  • 【数学 逆序对 构造】P12386 [蓝桥杯 2023 省 Python B] 混乱的数组|普及+
  • HTTP、WebSocket、SSE 对比
  • py爬虫的话,selenium是不是能完全取代requests?
  • 【Spring底层分析】Spring AOP基本使用+万字底层源码阅读分析
  • 使用 So-VITS-SVC 实现明星声音克隆与视频音轨替换实战全流程
  • windows11安装编译QtMvvm
  • Qt/C++编写GB28181服务端工具/绿色版开箱即用/对标wvp-gb28181/实时画面预览/录像回放下载
  • pikachu靶场通关笔记10 XSS关卡06-XSS之盲打
  • 结构型设计模式之装饰模式
  • C++string1号
  • NodeJS全栈WEB3面试题——P1基础知识:区块链与Web3原理
  • 腾答知识竞赛系统功能介绍
  • 【学习笔记】On the Biology of a Large Language Model
  • 《Effective Python》第六章 推导式和生成器——使用 yield from 组合多个生成器
  • 缓解颈部不适的营养补给之道
  • 线程池详细解析(二)
  • DAY 41 超大力王爱学Python
  • 5.29 自学测试 Linux基础 Day4
  • 由浅入深一文详解同余原理
  • SQL 窗口函数深度解析:ROW_NUMBER 实战指南
  • docker运行程序Killed异常排查
  • Node.js 项目调试指南
  • SOC-ESP32S3部分:25-HTTP请求
  • 初识CSS3
  • Hadoop 大数据启蒙:初识 HDFS
  • Transformer核心技术深度解析:多头注意力机制与架构精粹