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

wordpress wpdx主题网址seo优化排名

wordpress wpdx主题,网址seo优化排名,如何做分销型网站,活动推广方案策划文章目录 二叉树的层序遍历网上思路队列循环 总结 二叉树的层序遍历 给你二叉树的根节点 root ,返回其节点值的层序遍历 。 (即逐层地,从左到右访问所有节点)。 图一: 示例 1:如图一 输入:roo…

文章目录

    • 二叉树的层序遍历
      • 网上思路
        • 队列
        • 循环
    • 总结

二叉树的层序遍历

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

图一:
在这里插入图片描述

示例 1:如图一
输入:root = [3,9,20,null,null,15,7]
输出:[[3],[9,20],[15,7]]示例 2:
输入:root = [1]
输出:[[1]]示例 3:
输入:root = []
输出:[]

我的思路
想使用数组的,但是没成功
网上思路
循环
队列

网上思路

队列
var levelOrder = function (root) {// 如果根节点为空,返回空数组if (!root) {return [];}const result = []; // 用于存储结果const queue = [root]; // 初始化队列,开始时将根节点入队while (queue.length > 0) {const levelSize = queue.length; // 当前层的节点数量const currentLevel = []; // 存储当前层的节点值for (let i = 0; i < levelSize; i++) {const node = queue.shift(); // 从队列中取出节点currentLevel.push(node.val); // 将节点值加入当前层的数组// 如果左子节点存在,入队if (node.left) {queue.push(node.left);}// 如果右子节点存在,入队if (node.right) {queue.push(node.right);}}// 将当前层的节点值数组加入结果数组result.push(currentLevel);}return result; // 返回层序遍历的结果
};

讲解

  1. 队列初始化:使用一个队列来存储待访问的节点,初始时将根节点入队。
  2. 循环访问:当队列不为空时,循环进行以下操作:
    • 记录当前层的节点数量。
    • 创建一个数组 currentLevel 用于存储当前层的节点值。
    • 使用一个 for 循环遍历当前层的所有节点:
    • 从队列中取出节点并记录其值。
      如果该节点有左子节点或右子节点,则将它们入队。
  3. 结果存储:将当前层的节点值数组加入到结果数组 result 中。
  4. 返回结果:最终返回层序遍历的结果数组。
循环
var levelOrder = function (root) {// 如果根节点为空,返回空数组if (!root) {return [];}const result = []; // 用于存储结果const currentLevel = [root]; // 初始化当前层的节点数组while (currentLevel.length > 0) {const nextLevel = []; // 用于存储下一层的节点const currentValues = []; // 存储当前层的节点值// 遍历当前层的所有节点for (let i = 0; i < currentLevel.length; i++) {const node = currentLevel[i]; // 获取当前节点currentValues.push(node.val); // 记录节点值// 如果左子节点存在,加入下一层if (node.left) {nextLevel.push(node.left);}// 如果右子节点存在,加入下一层if (node.right) {nextLevel.push(node.right);}}// 将当前层的节点值加入结果数组result.push(currentValues);// 更新当前层为下一层currentLevel.length = 0; // 清空当前层currentLevel.push(...nextLevel); // 将下一层的节点加入当前层}return result; // 返回层序遍历的结果
}

讲解

  1. 当前层初始化:使用一个数组 currentLevel 来存储当前层的节点,初始时将根节点放入该数组。
  2. 循环访问:当 currentLevel 不为空时,循环进行以下操作:
    • 创建一个新的数组 nextLevel 用于存储下一层的节点。
    • 创建一个数组 currentValues 用于存储当前层的节点值。
  3. 遍历当前层:使用一个 for 循环遍历 currentLevel 中的节点:
    • 记录节点值到 currentValues
    • 如果节点有左子节点或右子节点,则将它们加入 nextLevel
  4. 结果存储:将 currentValues 加入到 result 中。
  5. 更新当前层:清空 currentLevel,并将 nextLevel 中的节点加入 currentLevel
  6. 返回结果:最终返回层序遍历的结果数组。

总结

任重而道远!

http://www.dinnco.com/news/82580.html

相关文章:

  • 穿着丝袜做会更爽网站青岛seo代理计费
  • 蓝色经典网站微信公众号营销
  • wordpress免费主题网站软件推广赚钱
  • 网站开发毕业周记网站查询信息
  • 园林设计公司百度搜索引擎优化方案
  • 做一般的公司网站需要多少钱长春网站建设团队
  • 怎样用dw做新闻发布网站杭州谷歌推广
  • 七牛云做wordpress图床seo专员
  • python 做网站 代码会百度排行榜风云
  • 万户 网站建设学seo推广
  • 本机做网站服务上传到优秀的软文广告欣赏
  • 房天下怎样快速做网站seo关键词推广方式
  • 专业版装修用什么网站做导航条市场营销案例100例
  • .net网站与php网站整站优化关键词排名
  • 网页设计与网站建设选择题电商自学网
  • wordpress 摄影关键词优化话术
  • 长沙做网站企业b站视频推广
  • 网络建设上市公司排名广州seo网络推广员
  • 绵阳住房和城乡建设部网站手机百度引擎搜索入口
  • wordpress前台投稿株洲seo优化首选
  • 凌河网站建设推广长春网站建设开发
  • 网站的优化与网站建设有关吗百度人工智能开放平台
  • 哪里做网站靠谱网站快速优化排名官网
  • 完整网页制作教程昆明seo排名
  • 团购网站 模板株洲今日头条新闻
  • 做网站设计公司价格杭州百度快照优化排名推广
  • 宝鸡市住房和城市建设局网站seo博客模板
  • 网站做com合net的区别免费投放广告平台
  • 平面设计赚钱网站网站设计费用明细
  • 网上做牙刷上什么网站营销策划公司名字