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

泉州网站建设需要平台注册公司多少钱收费

泉州网站建设需要平台,注册公司多少钱收费,企业网站制作的书,网站服务器的采购方案【LetMeFly】429.N 叉树的层序遍历:广度优先搜索(BFS) 力扣题目链接:https://leetcode.cn/problems/n-ary-tree-level-order-traversal/ 给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)…

【LetMeFly】429.N 叉树的层序遍历:广度优先搜索(BFS)

力扣题目链接:https://leetcode.cn/problems/n-ary-tree-level-order-traversal/

给定一个 N 叉树,返回其节点值的层序遍历。(即从左到右,逐层遍历)。

树的序列化输入是用层序遍历,每组子节点都由 null 值分隔(参见示例)。

 

示例 1:

输入:root = [1,null,3,2,4,null,5,6]
输出:[[1],[3,2,4],[5,6]]

示例 2:

输入:root = [1,null,2,3,4,5,null,null,6,7,null,8,null,9,10,null,null,11,null,12,null,13,null,null,14]
输出:[[1],[2,3,4,5],[6,7,8,9,10],[11,12,13],[14]]

 

提示:

  • 树的高度不会超过 1000
  • 树的节点总数在 [0, 10^4] 之间

方法一:广度优先搜索(BFS)

和之前二叉树的广度优先搜索一样,我们可以使用一个队列来存放每一层的节点,再让这些节点依次出队,并将节点的孩子们(如有)入队。

  • 时间复杂度 O ( N ) O(N) O(N),其中 N N N是节点个数
  • 空间复杂度 O ( N 2 ) O(N2) O(N2),其中 N 2 N2 N2是节点最多的一层的节点数

AC代码

C++
class Solution {
public:vector<vector<int>> levelOrder(Node* root) {vector<vector<int>> ans;queue<Node*> q;if (root) {q.push(root);}while (q.size()) {ans.push_back({});for (int _ = q.size(); _ > 0; _--) {Node* thisNode = q.front();q.pop();ans.back().push_back(thisNode->val);for (Node* nextNode : thisNode->children) {q.push(nextNode);}}}return ans;}
};
Python
# from typing import List, Optional# Definition for a Node.
class Node:def __init__(self, val=None, children=None):self.val = valself.children = childrenclass Solution:def levelOrder(self, root: Optional[Node]) -> List[List[int]]:ans = []q = []if root:q.append(root)while q:ans.append([])for _ in range(len(q)):thisNode = q[0]q = q[1:]ans[-1].append(thisNode.val)for nextNode in thisNode.children:q.append(nextNode)return ans

针对于Python的语法糖,若使用两个数组可以很大程度上减少代码量(甚至提高效率):

# from typing import Optional, List# Definition for a Node.
class Node:def __init__(self, val=None, children=None):self.val = valself.children = childrenclass Solution:def levelOrder(self, root: Optional[Node]) -> List[List[int]]:ans = []a = []if root:a.append(root)while a:ans.append([thisNode.val for thisNode in a])a = [nextChild for thisNode in a for nextChild in thisNode.children]return ans

同步发文于CSDN,原创不易,转载经作者同意后请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/136136336

http://www.yayakq.cn/news/861802/

相关文章:

  • 首都之窗门户网站首页wordpress后台无法变中文
  • 咸阳网站开发公司地址硬件开发项目流程
  • 短网站生成手机网站适应屏幕
  • 制作游戏的网站制作网赌app要多少钱
  • 东莞诚信通代运营兰州网站seo诊断
  • 聚牛建设网站aso优化技术
  • wordpress always重庆seo技术教程
  • paypal网站做外贸seo排名关键词点击
  • 做兼职什么网站宁波网站建设招商加盟
  • 做快手网站北京网站的制作设计
  • 网站跟app的区别是什么意思wordpress主题超限
  • 企业网站建设变相收取等级保护费wordpress 侧边栏 修改字体大小
  • 网站制作流程 优帮云网站论坛模板下载
  • 北京网站建设方案托管学院宣传网站建设简介
  • 邳州哪家做百度推广网站入门seo技术教程
  • 万网 做网站厦门网站建设哪好
  • 自己怎样建设网站首页推广运营是做什么的
  • 农业信息网站建设方案做网站的公司哪家
  • 如何用wordpress仿站网站优化销售话术
  • 公司网站建设杭州外贸seo网站大全
  • anaconda可以做网站吗威海企业网站建设
  • 响应式网站建设 苏州wordpress网站的跳出率很低
  • 全国建设网站做百度网站要注意什么
  • 制作移动网站公司苏州好的网站公司哪家好
  • 深圳app网站开发网络设计课程什么专业有学
  • 网站设计高端网站制作微信开发者工具代码
  • 一些设计网站平面设计培训怎么样
  • 成都神速建站旅游景点推广策划方案
  • 做网站是58好还是百度好花都网站设计都
  • 荥阳做网站服务器运维