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

福田网站建设设计广州网络seo优化

福田网站建设设计,广州网络seo优化,网站毕业设计模板,深圳网站制作建设公司题目: 给定一个二叉树的根节点root,检查它是否轴对称。 方法一:递归 如果一个树的左子树与右子树镜像对称,那么这个树是对称的。 互为镜像的条件:他们的两个根结点具有相同的值,每棵树的右子树都与另一个树的左子树…

题目:

给定一个二叉树的根节点root,检查它是否轴对称。


方法一:递归

如果一个树的左子树与右子树镜像对称,那么这个树是对称的。

互为镜像的条件:他们的两个根结点具有相同的值,每棵树的右子树都与另一个树的左子树镜像对称

可以实现这样一个递归函数,通过「同步移动」两个指针的方法来遍历这棵树,p指针和q指针一开始都指向这棵树的根,随后p右移时,q左移,p左移时,q右移。每次检查当前p和q节点的值是否相等,如果相等再判断左右子树是否对称。

# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):def isSymmetric(self, root):""":type root: Optional[TreeNode]:rtype: bool"""return self.check(root.left,root.right)def check(self,p,q):if p is None and q is None:return True if p is None or q is None:return Falsereturn p.val==q.val and self.check(p.left,q.right) and self.check(p.right,q.left)

时间复杂度:O(n)

空间复杂度:O(n)


方法二:迭代

初始化时我们把根节点入队两次。每次提取两个结点并比较它们的值(队列中每两个连续的结点应该是相等的,而且它们的子树互为镜像),然后将两个结点的左右子结点按相反的顺序插入队列中。当队列为空时,或者检测到树不对称(即从队列中取出两个不相等的连续结点)时,该算法结束。

# Definition for a binary tree node.
# class TreeNode(object):
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
class Solution(object):def isSymmetric(self, root):""":type root: Optional[TreeNode]:rtype: bool"""return self.check(root,root) #同一个根节点是因为要比较树的左右子树def check(self,u,v):q=[]  #将节点 u 和 v(即左右子树的根节点)添加到队列中,接下来我们将对这些节点进行比较q.append(u)q.append(v)while q:u=q.pop(0)v=q.pop(0)#每次从队列中取出两个节点比较,看它们是否对称if u is None and v is None:#如果都是 None,说明这两个子树都为空,可以跳过这次比较continueif u is None or v is None or u.val !=v.val:return Falseq.append(u.left) #节点 u 和 v 的子节点按照对称的方式加入队列q.append(v.right)q.append(u.right)q.append(v.left)return True

时间复杂度:O(n)

空间复杂度:O(n)

http://www.dtcms.com/wzjs/101399.html

相关文章:

  • 地方性小网站的建设东莞做好网络推广
  • wordpress 阿里云宁波优化seo是什么
  • 表白网页生成器下载网站优化搜索排名
  • 网站建设平台哪个公司好广告关键词
  • 常用于网站推广的营销手段是合肥网络推广外包
  • 1元网站建设精品网站制作新手做seo怎么做
  • 个人备案网站做电影站网络营销推广的基本手段
  • wordpress新页面404烟台seo
  • 汇鑫小学网站建设深圳纯手工seo
  • 如何优化网站目录结构百度怎么推广自己的产品
  • 做第三方网站注意什么it培训机构靠谱吗
  • 北京市网站公司下载爱城市网app官方网站
  • 泉州关键词优化怎么优化自己网站的关键词
  • 中山网页建站模板营销软文小短文
  • 图片设计网站推荐西安百度竞价托管
  • 网页设计学校网站seo培训中心
  • 建设购物网站中国营销策划第一人
  • 网站虚拟建设策划台州百度推广优化
  • 有哪些网站可以找兼职做排名优化系统
  • 做推文网站除了秀米还要什么b2b网站推广排名
  • 一级做受网站aso优化{ }贴吧
  • 企业网站产品分类多怎么做seo微博指数
  • 给人做网站多少钱新品上市怎么做宣传推广
  • 推广广告软件武汉网站营销seo方案
  • 黄金做空网站手机制作网站的软件
  • 百度做网站骗人到哪里去投诉今日头条新闻最新疫情
  • 建设网站哪家最好网络服务商
  • 网站建设丶金手指专业刚刚传来最新消息
  • 网站是做o2o还是b2c好苏州关键词优化搜索排名
  • 论坛网站模板div css百度推广怎么联系