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

菠菜源码怎么做网站移动网站有哪些

菠菜源码怎么做网站,移动网站有哪些,新东方教育培训机构官网,专门做app的原型网站记录了初步解题思路 以及本地实现代码#xff1b;并不一定为最优 也希望大家能一起探讨 一起进步 目录 2/19 590. N 叉树的后序遍历2/20 105. 从前序与中序遍历序列构造二叉树2/21 106. 从中序与后序遍历序列构造二叉树2/22 889. 根据前序和后序遍历构造二叉树2/23 2583. 二叉…记录了初步解题思路 以及本地实现代码并不一定为最优 也希望大家能一起探讨 一起进步 目录 2/19 590. N 叉树的后序遍历2/20 105. 从前序与中序遍历序列构造二叉树2/21 106. 从中序与后序遍历序列构造二叉树2/22 889. 根据前序和后序遍历构造二叉树2/23 2583. 二叉树中的第 K 大层和2/24 2476. 二叉搜索树最近节点查询2/25 235. 二叉搜索树的最近公共祖先 2/19 590. N 叉树的后序遍历 左右根 栈实现 mem记录节点是否已被处理 class Node(object):def __init__(self, valNone, childrenNone):self.val valself.children childrendef postorder(root)::type root: Node:rtype: List[int]st [root]if not root:return []ans []memset()while st:node st[-1]if len(node.children)0 or node in mem:ans.append(node.val)st.pop()continuest.extend(reversed(node.children))mem.add(node)return ans 2/20 105. 从前序与中序遍历序列构造二叉树 根据先序遍历 根左右 确定根节点 再根据中序遍历中根节点位置 将左右子树分开 class TreeNode(object):def __init__(self, x):self.val xself.left Noneself.right Nonedef buildTree(preorder, inorder)::type preorder: List[int]:type inorder: List[int]:rtype: TreeNoden len(inorder)indic dict(zip(inorder,range(n)))def create(i, j):if i j: return Noneroot TreeNode(preorder.pop(0))iroot indic[root.val]root.left create(i,iroot-1)root.right create(iroot1, j)return rootreturn create(0, n - 1) 2/21 106. 从中序与后序遍历序列构造二叉树 根据后序遍历 中序遍历 生成树 从后续遍历最后确定根节点 在中序遍历中 将根节点左右子树分开 class TreeNode(object):def __init__(self, x):self.val xself.left Noneself.right Nonedef buildTree(inorder,postorder)::type preorder: List[int]:type inorder: List[int]:rtype: TreeNodeif len(postorder)0 or len(inorder)0:return Nonen len(inorder)indic dict(zip(inorder,range(n)))def create(i, j):if i j: return Noneroot TreeNode(postorder.pop())iroot indic[root.val]root.right create(iroot1, j)root.left create(i, iroot-1)return rootreturn create(0, n - 1) 2/22 889. 根据前序和后序遍历构造二叉树 前序 根左右 后续 左右根 前序根后一个为左子树的根 在后续中找到这个根可以划分左右子树 class TreeNode(object):def __init__(self, x):self.val xself.left Noneself.right Nonedef constructFromPrePost(preorder, postorder)::type preorder: List[int]:type inorder: List[int]:rtype: TreeNodedef create(pre, post):if len(pre)0 or len(post)0:return Nonen len(pre)if n1:return TreeNode(post[0])leftsize post.index(pre[1])1left create(pre[1:1leftsize],post[:leftsize])right create(pre[1leftsize:],post[leftsize:-1])return TreeNode(pre[0],left,right)return create(preorder,postorder) 2/23 2583. 二叉树中的第 K 大层和 BFS 计算每一层的和 最小堆存储最大的K个和 class TreeNode(object):def __init__(self, x):self.val xself.left Noneself.right Nonedef kthLargestLevelSum(root, k)::type root: Optional[TreeNode]:type k: int:rtype: intimport heapqh []l [root]while l:tmp[]total 0for node in l:totalnode.valif node.left:tmp.append(node.left)if node.right:tmp.append(node.right)if len(h)k or h[0]total:heapq.heappush(h,total)if len(h)k:heapq.heappop(h)ltmp[:]if len(h)k:return -1return heapq.heappop(h) 2/24 2476. 二叉搜索树最近节点查询 深搜获取节点值 从小到大 二分搜索 class TreeNode(object):def __init__(self, val0, leftNone, rightNone):self.val valself.left leftself.right rightdef closestNodes(root, queries)::type root: Optional[TreeNode]:type queries: List[int]:rtype: List[List[int]]import bisectv []def dfs(node):if not node:returndfs(node.left)v.append(node.val)dfs(node.right)dfs(root)print(v)n len(v)ans []for q in queries:j bisect.bisect_left(v, q)mx v[j] if jn else -1if jn or v[j]!q:j-1mn v[j] if j0 else -1ans.append([mn,mx])return ans 2/25 235. 二叉搜索树的最近公共祖先 根据二叉搜索树特性 根节点不可能比两个节点都大 或都小 注意p,q为节点 不是数值 class TreeNode(object):def __init__(self, x):self.val xself.left Noneself.right Nonedef lowestCommonAncestor(root, p, q)::type root: TreeNode:type p: TreeNode:type q: TreeNode:rtype: TreeNodewhile root:v root.valif vp.val and vq.val:root root.rightelif vp.val and vq.val:root root.leftelse:return root
http://www.tj-hxxt.cn/news/142567.html

相关文章:

  • 网站微信分享链接怎么做的安卓网站开发前景
  • 2015百度推广网站遭到攻击seo优化专员
  • 西宁做网站的好公司网站优化推广公司
  • 营销型网站建设定制网站建设做任务有奖励的网站
  • 做推广的的网站模板之梦一个系统做多个网站
  • 大连网站制作怎么做营销推广方案范文
  • 公司的网站怎么做推广solaris+wordpress主题
  • 论坛定制广州seo报价
  • 网站后台密码怎么修改网站建设 响应式 北京
  • 网站做推广页需要什么软件有哪些东营定制网站建设服务
  • 公司有域名的怎么建设网站一起做网店的类似网站
  • 建设部质监局网站重庆会计之家是谁做的网站
  • 想做一个静态网页网站不需要有后台数据库购物网站的建设时间
  • asp.net商务网站开发网站顶部导航
  • 如何设计购物网站配色设计网站推荐
  • 南昌市网站备案防查水表 wordpress 评论
  • asp网站新闻置顶win8网站设计
  • 网站服务对生活的影响wordpress插件ftp
  • 网络营销推广方法和手段不会做网站如何做seo
  • 网站建设销售好做wordpress 宽版
  • 什么是展示型网站建设ppt设计灵感
  • 多层分销网站建设企业管理系统项目简介
  • 台州网站建设公司哪个好个人做网站公司
  • 长沙网站建设王道下拉棒电子商务网站建设的实训报告
  • 深圳网站建设网站运营专业做鞋子网站
  • 米课wordpress建站坂田英文网站制作
  • HTMT超链接网站怎么做湖北省住房城乡建设厅网站首页
  • 网站建设背景介绍wordpress 远程 mysql
  • 织梦网站调节网站中文域名查询网站
  • 北京网站托管维护外贸网站建设推广公司