leetcode1008
class Solution:
def __init__(self):
self.root = None def construct(self,order,root,i):
if i==len(order):
return None
else:
if self.root==None:
self.root = TreeNode(order[i])
self.construct(order,self.root,i+1)
else:
if order[i]<root.val:
if root.left==None:
root.left = TreeNode(order[i])
self.construct(order,self.root,i+1)
else:
self.construct(order,root.left,i)
else:
if root.right==None:
root.right = TreeNode(order[i])
self.construct(order,self.root,i+1)
else:
self.construct(order,root.right,i) def bstFromPreorder(self, preorder: 'List[int]') -> 'TreeNode':
self.construct(preorder,self.root,0)
return self.root
比较简单的题目,递归方式构造二叉搜索树。
leetcode1008的更多相关文章
- [Swift]LeetCode1008. 先序遍历构造二叉树 | Construct Binary Search Tree from Preorder Traversal
Return the root node of a binary search tree that matches the given preorder traversal. (Recall that ...
随机推荐
- 【jdk】使用wget下载jdk8
因为在oracle官网下载jdk需要 如果直接在linux中使用 wget命令下载,实际下载是一个html文件,所以需要通过一下命令 wget --no-check-certificate --no- ...
- elasticsearch 口水篇(9)Facet
FACET 1)Terms Facet { "query" : { "match_all" : { } }, "facets" : { &q ...
- 如何修改CSV文件的分隔符
Excel转成CSV文件,在Windows下默认的列表分隔符是逗号(,).在某些情况下,我们可能需要更改列表分隔符,如某个单元格内容包含逗号,而这可能导致使用它的程序出错,这样就需要更改列表分隔符:再 ...
- Python——pandas数据处理(python programming)
- Uc的个人中心很奇葩
Uc的个人中心很奇葩,未登录前点击头像是图2选择性别,点击云同步才是图3登录,登录之后,想退出,要点击图1的头像进入图4编辑资料,然后右上角退出登录…摸索了好久,差点抓狂…把你们的产品经理叫出来一下… ...
- Zabbix 调整告警发送的内容格式
在配置动作区域 可以设置报警内容格式进行调整 原先告警内容 修改内容为: 后显示效果
- VLAN IEEE802.1Q
一. VLAN产生原因-广播风暴 传统的局域网使用的是HUB,HUB只有一根总线,一根总线就是一个冲突域.所以传统的局域网是一个扁平的网络,一个局域网属于同一个冲突域.任何一台主机发出的报文都会被同一 ...
- Jmeter(三十八)Jmeter Question 之 ‘批量执行SQL语句’
知识使我们变得玩世不恭,智慧使我们变得冷酷无情,我们思考的太多,感知太少,除了机器,我们更需要人性,除了智慧,我们需要仁慈和善良. ------出自查理卓别林的演讲 前面有提到Jmeter使用JDBC ...
- 【PHP】五分钟教你编写一个实时弹幕网站
由于博主是个忠实的英雄联盟粉丝,所以经常观看一些明星大神的直播.而一谈到直播,肯定会看到满屏幕飘来飘去的弹幕.那么问题来了,这些视频弹幕网站如何做到实时同步的?PHP如何开发一个类似的网站? 首先要搞 ...
- 加拿大大学排名 by USNews
https://www.usnews.com/education/best-global-universities/canada 2017综合排名: CS Subject: