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

C语言 | Leetcode C语言题解之第429题N叉树的层序遍历

题目:

题解:

#define MAX_LEVE_SIZE 1000
#define MAX_NODE_SIZE 10000int** levelOrder(struct Node* root, int* returnSize, int** returnColumnSizes) {int ** ans = (int **)malloc(sizeof(int *) * MAX_LEVE_SIZE);*returnColumnSizes = (int *)malloc(sizeof(int) * MAX_LEVE_SIZE);if (!root) {*returnSize = 0;return ans;}struct Node ** queue = (struct Node **)malloc(sizeof(struct Node *) * MAX_NODE_SIZE);int head = 0, tail = 0;int level = 0;queue[tail++] = root;while (head != tail) {int cnt = tail - head;ans[level] = (int *)malloc(sizeof(int) * cnt);for (int i = 0; i < cnt; ++i) {struct Node * cur = queue[head++];ans[level][i] = cur->val;for (int j = 0; j < cur->numChildren; j++) {queue[tail++] = cur->children[j];}}(*returnColumnSizes)[level++] = cnt;}*returnSize = level;free(queue);return ans;
}

http://www.mrgr.cn/news/33934.html

相关文章:

  • 探索 HTTP 请求方法:GET、POST、PUT、DELETE 等的用法详解
  • 民锋科技如何通过量化分析提升金融市场投资决策
  • 免费,WPS Office教育考试专用版
  • MYSQL 库,表 基本操作
  • 机器学习基础04
  • Java中的集合
  • C++ | Leetcode C++题解之第430题扁平化多级双向链表
  • git-repo系列教程(6) 在自己服务器上搭建git-repo仓库
  • 2024 离线ASR和TTS推荐与示例
  • 【二等奖论文】2024年华为杯研究生数学建模E题成品论文获取入口
  • Java 每日一刊(第15期):内部类
  • java8新特新(二)
  • AI学习指南深度学习篇-Adadelta的数学原理
  • Project Online 高级版部署方案
  • 7款国内AI搜索引擎大全网站
  • Kotlin Android 环境搭建
  • uniapp map设置高度为100%后,会拉伸父容器的高度
  • MateBook 16s 2023在Deepin下开启性能模式,调节风扇转速到最大,全网首发!
  • 返利机器人在电商返利系统中的负载均衡实现
  • 【C语言零基础入门篇 - 17】:排序算法
  • PHP isset() 和 empty() 区别
  • 【C++】继承(上)
  • 定了,东湖高新区下半年中高级职称申报时间
  • java日志框架之Log4j
  • Golang | Leetcode Golang题解之第430题扁平化多级双向链表
  • C++标准库双向链表 list 中的insert函数实现。