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

淘宝店铺可以做网站优化么合肥seo排名收费

淘宝店铺可以做网站优化么,合肥seo排名收费,编程培训机构哪个靠谱,wordpress chrome插件文章目录 二叉树的层序遍历网上思路队列循环 总结 二叉树的层序遍历 给你二叉树的根节点 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.zhongyajixie.com/news/31564.html

相关文章:

  • 怎样设计自己网站域名seo网站监测
  • 用react做的网站上传网站开发制作培训学校
  • 网站建设的工作流程什么是友情链接?
  • 哪个网站做室内效果图厉害上海外贸seo公司
  • oa网站建设关键词搜索工具有哪些
  • 电脑建设网站在互联网访问百度网站排名搜行者seo
  • 中小型网站建设哪家好线上运营推广方案
  • 网站建设中高低端区别app投放推广
  • 中国建设人才网证书查询系统官网seo三人行论坛
  • 网站优化的优势线上宣传方式有哪些
  • 小橘子被做h网站互联网推广员是做什么
  • 做网站推广用优化还是竞价云浮新增确诊病例30例
  • 网站备案上传身份证百度网首页官网登录
  • cc域名做网站好吗成都短视频代运营
  • 网站托管平台互联网广告投放代理公司
  • 网页美工实训结论与心得体会网站优化排名易下拉排名
  • 网站开发和web前端开发区别百度竞价点击软件奔奔
  • 北京房山区住房和城乡建设委员会网站网络营销策划书范文模板
  • 苏州网站建设推广西安新站网站推广优化
  • 网站开发 哪家好百度推广优化是什么?
  • 西安专业做网站的seo实战论坛
  • 网站建设咨询热线什么时候网络推广
  • 德钦网站建设全部列表支持安卓浏览器软件下载
  • win7 asp网站无法显示该页面东莞营销推广公司
  • 国外免费wordpress主题只要做好关键词优化
  • 网站建设开票点数买卖链接网站
  • 个人网站如何赚钱如何制作网页
  • 个人网站模板下载seo工资水平
  • mip 网站模板b2b网站免费推广
  • 如何做闲置物品交换的网站nba最新交易动态