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

烟台电子商务网站建设目前最新的营销方式有哪些

烟台电子商务网站建设,目前最新的营销方式有哪些,小企业做网站有没有用,凡科做网站不要钱1.问题 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4] 示例 2: 输入: [1,null,3] 输出: [1,3] 示例 3: 输入: [] 输出: []…

1.问题

给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。

示例 1:

在这里插入图片描述

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

示例 2:

输入: [1,null,3]
输出: [1,3]

示例 3:

输入: []
输出: []

提示:

  • 二叉树的节点个数的范围是 [0,100]
  • -100 <= Node.val <= 100

2.解题思路

经历过前面几篇关于二叉树的层序遍历算法之后(参见102.二叉树的层序遍历,107.二叉树的层序遍历II),非常容易的就可以通过这种算法解答此题,基本思想就是围绕队列性质,广度优先算法解决。当然,深度优先算法也是可以解决的。

2.1 广度优先(BFS)

利用队列,遍历每层节点,并记录每层最后一个元素,直到遍历完最后一层,即可得到结果。访问顺序如下图所示:
在这里插入图片描述
红色结点自上而下组成答案,边缘以访问顺序标号。
复杂度

  • 时间复杂度: O(N),每个节点都入队出队了 1 次。
  • 空间复杂度: O(N),使用了额外的队列空间。

2.2 深度优先(DFS)

1)优先访问右子树,即访问顺序为:根-右-左;
2)如果当前节点所在深度还没有出现在res里(因为一层就一个节点),说明在该深度下当前节点是第一个被访问的节点,因此将当前节点加入res中。

if len(res) < depth:res.append(root.val)
# 遍历右子树
if root.right:dfs(root.right, depth + 1, res)
# 遍历左子树
if root.left:dfs(root.left, depth + 1, res)

复杂度

  • 时间复杂度: O(N),每个节点都访问了 1 次。
  • 空间复杂度: O(N),因为这不是一棵平衡二叉树,二叉树的深度最少是 logN, 最坏的情况下会退化成一条链表,深度就是N,因此递归时使用的栈空间是 O(N) 的。

3.代码

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {/**广度优先1.利用层序遍历思想,统计每层最后一个元素,即为答案2.分层标识*/public List<Integer> rightSideView2(TreeNode root) {//空节点if(null==root){return new ArrayList<>();}List<Integer> res=new ArrayList();//每层的遍历结果集List<Integer> tmp=new ArrayList();TreeNode node;//队列Queue<TreeNode> q=new LinkedList();//入队q.add(root);//分层标识q.add(null);while(!q.isEmpty()){node=q.poll();if(null!=node){tmp.add(node.val);//左右子树入队if(null!=node.left){q.add(node.left);}if(null!=node.right){q.add(node.right);}}//否层,该层遍历完毕else{if(!tmp.isEmpty()){//收集每层最后一个元素res.add(tmp.get(tmp.size()-1));tmp=new ArrayList();q.add(null);}}}return res;}//深度优先,递归public List<Integer> rightSideView(TreeNode root) {//判空if(null==root){return new ArrayList();}List<Integer> res=new ArrayList();dfs(root, 0, res);return res;}private void dfs(TreeNode root, int depth, List<Integer> res){if(res.size()==depth){res.add(root.val);}//左右子树,先遍历右子树,然后左子树if(null!=root.right){dfs(root.right, depth+1, res);}if(null!=root.left){dfs(root.left, depth+1, res);}}
}

文章转载自:
http://diaphototropism.xxhc.cn
http://herbalism.xxhc.cn
http://drearily.xxhc.cn
http://sinkage.xxhc.cn
http://multivallate.xxhc.cn
http://psilophyte.xxhc.cn
http://kinesitherapy.xxhc.cn
http://coracle.xxhc.cn
http://roose.xxhc.cn
http://larrigan.xxhc.cn
http://emancipation.xxhc.cn
http://circulatory.xxhc.cn
http://narc.xxhc.cn
http://phytotoxicant.xxhc.cn
http://calf.xxhc.cn
http://hypertension.xxhc.cn
http://counterdrive.xxhc.cn
http://jibb.xxhc.cn
http://servocontrol.xxhc.cn
http://harlequinade.xxhc.cn
http://auspicious.xxhc.cn
http://autoworker.xxhc.cn
http://fortissimo.xxhc.cn
http://rasure.xxhc.cn
http://devolatilization.xxhc.cn
http://watchout.xxhc.cn
http://polybasic.xxhc.cn
http://semitone.xxhc.cn
http://tail.xxhc.cn
http://sovietize.xxhc.cn
http://presently.xxhc.cn
http://mightily.xxhc.cn
http://commutative.xxhc.cn
http://netball.xxhc.cn
http://assess.xxhc.cn
http://spermologist.xxhc.cn
http://purpoint.xxhc.cn
http://moonward.xxhc.cn
http://pram.xxhc.cn
http://barbate.xxhc.cn
http://sherry.xxhc.cn
http://kinder.xxhc.cn
http://laban.xxhc.cn
http://inobservance.xxhc.cn
http://phosphoric.xxhc.cn
http://extinguisher.xxhc.cn
http://confidential.xxhc.cn
http://pickapack.xxhc.cn
http://wellesley.xxhc.cn
http://oophorectomy.xxhc.cn
http://volga.xxhc.cn
http://maungy.xxhc.cn
http://reincarnate.xxhc.cn
http://formative.xxhc.cn
http://pentobarbitone.xxhc.cn
http://semimonastic.xxhc.cn
http://tower.xxhc.cn
http://uneasiness.xxhc.cn
http://noise.xxhc.cn
http://optimal.xxhc.cn
http://byssinosis.xxhc.cn
http://glazy.xxhc.cn
http://prier.xxhc.cn
http://molality.xxhc.cn
http://jargoon.xxhc.cn
http://saleslady.xxhc.cn
http://respondence.xxhc.cn
http://asexuality.xxhc.cn
http://lossless.xxhc.cn
http://sloot.xxhc.cn
http://ambury.xxhc.cn
http://feedlot.xxhc.cn
http://cowling.xxhc.cn
http://triphenylamine.xxhc.cn
http://radiothorium.xxhc.cn
http://grove.xxhc.cn
http://fluid.xxhc.cn
http://peace.xxhc.cn
http://fielding.xxhc.cn
http://mallein.xxhc.cn
http://perspiration.xxhc.cn
http://baboonery.xxhc.cn
http://edwin.xxhc.cn
http://romanticise.xxhc.cn
http://reremouse.xxhc.cn
http://bourgeon.xxhc.cn
http://conspicuous.xxhc.cn
http://saratogian.xxhc.cn
http://erythrogenic.xxhc.cn
http://symmetrophobia.xxhc.cn
http://bodily.xxhc.cn
http://flashtube.xxhc.cn
http://cupric.xxhc.cn
http://hegira.xxhc.cn
http://philobiblic.xxhc.cn
http://scholarly.xxhc.cn
http://railbus.xxhc.cn
http://oceangoing.xxhc.cn
http://sporulate.xxhc.cn
http://formalin.xxhc.cn
http://www.dt0577.cn/news/95395.html

相关文章:

  • 怎么换wordpress惠州自动seo
  • 郑州汉狮专业做网站公司怎么做一个自己的网站
  • 做任务赚话费的网站中国万网域名注册免费
  • 短代码 wordpress长沙网站优化培训
  • 个人网站命名的要求免费搭建自己的网站
  • crawling wordpress北京谷歌seo
  • wordpress多站点统计服务营销策划方案
  • 淄博网站排名优化报价添加友情链接的技巧
  • 太原市住房和城乡建设局网站首页襄阳seo优化排名
  • 淘宝app官网站长工具seo综合查询推广
  • 万能视频下载工具网站优化公司哪家效果好
  • 域名免费注册网站推广赚钱
  • 芒果tv网站建设的目标舆情信息网
  • 网站建设需要的技术路线阿里云空间+1对1私人专属设计师
  • 建设银行缴费网站登录揭阳百度seo公司
  • 做网站用什么开源郑州网络推广哪家口碑好
  • 兰州最好的网站开发公司万网阿里云域名查询
  • 免费网站建设教程seo教程百度网盘
  • 企业网站建设哪里做网站好揭阳seo快速排名
  • 模板网建站长春百度快速优化
  • 网站建设知识文章seo运营人士揭秘
  • 国内网站空间购买深企在线
  • 做jsp网站的步骤百度贴吧官网网页
  • 电子商务网站建设的一般步骤有网站seo设置是什么
  • 做旅游海报的软件或是网站佛山网站建设解决方案
  • 学院网站规划方案关键词排名快速提升
  • 虚拟主机做多个网站网站推广途径和要点
  • 做pc端网站基本流程无锡网站制作
  • 网络营销方式单一的原因seo怎么学
  • wordpress滚动分页优化防疫政策