![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
wds2006sdo
这个作者很懒,什么都没留下…
展开
-
Leetcode 105 Construct Binary Tree from Preorder and Inorder Traversal
题目大意给出二叉树的前序与中序遍历,返回该二叉树算法很简单,递归的去做 前序第一个点为当前子树的根节点,在中序中寻找该节点,以此节点进行划分,左边为根节点左子树中序,右边为根节点的右子树中序。前序的划分利用中序划分的结果,左子树前序等于list[1 … 1+len(左子树中序)] ,右子树中序等于list[1+len(左子树中序) … 最后]代码You are here! Your runt原创 2016-07-05 00:36:50 · 3529 阅读 · 0 评论 -
Leetcode 300 Longest Increasing Subsequence(Python)
题目大意确定一个未排序数组中最大上升子序列的长度算法很简单,没啥可说的。 就是维护一个数组A如果当前数num比数组A最后一个元素大,那么依旧构成一个上升序列,将其放到数组A最后。否则,二分查找数组A中第一个比num大的数,用num替换之最后数组A长度即为该未排序数组的最大上升子序列长度 但要注意该数组并不一定是最大上升子序列举例一个数组{3,6,2} 1. 输入3,此时LIS数组为[原创 2016-07-19 01:57:14 · 3907 阅读 · 1 评论 -
Leetcode 334. Increasing Triplet Subsequence (Python)
题目大意确定一个未排序数组中是否存在长度为3的上升子序列算法和leetcode 300思路一样,大家可以看这里代码class Solution(object): def binary_search(self,num): start = 0 end = len(self.LIS) - 1 if self.LIS[0] >= num:原创 2016-07-19 02:05:45 · 3102 阅读 · 0 评论 -
Leetcode 307. Range Sum Query - Mutable (Python)
题目大意构建一个数据结构,共有两种操作方式sumRange(i,j):计算[i,j]范围内数组和update(i,val):将位于数组坐标i的元素值改为val算法使用线段树即可代码class Segment_Tree(object): def add(self,start,end,llist): self.start = start self.end =原创 2016-07-19 03:00:19 · 3487 阅读 · 0 评论 -
Leetcode 299. Bulls and Cows (Python)
终于瞌睡了题目大意给定两个字符串位置相同,字符相同,A加一位置不同,存在相同字符,B加一算法就是用hash表做代码class Solution(object): def getHint(self, secret, guess): """ :type secret: str :type guess: str :rtype:原创 2016-07-19 03:52:50 · 3826 阅读 · 0 评论 -
Leetcode 373. Find K Pairs with Smallest Sums(Python)
睡不着咋办!题目大意给定两个数组,定义pair是一个二元组,每个元素分别取自两个数组。求pair和前k小的pair思路用堆,我们维持一个k最大堆即可代码class mHeap(object): heap = [] def __init__(self,MIN_HEAP = True): self.heap = [] self.MIN_HEAP = MIN_原创 2016-07-19 03:31:18 · 3351 阅读 · 0 评论