01 2021 档案

摘要:I O(n),差在没有利用有序的条件 func missingNumber(A []int) int { n := len(A) for i := 0; i < n; i++ { for (A[i]>=0 && A[i]<n && A[A[i]] != A[i]) { A[A[i]], A[i] = 阅读全文
posted @ 2021-01-30 20:31 童年の波鞋 阅读(113) 评论(0) 推荐(0)
摘要:找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。 思路: func findUnsortedSubarray(A []int) int { n, l, r := len(A), len(A), 0 for i := 0; i < n-1; i++ { for j 阅读全文
posted @ 2021-01-28 12:13 童年の波鞋 阅读(72) 评论(0) 推荐(0)
摘要:使BST的每个节点 node 的新值重新等于原树中 >=node.val 的值之和。 递归 func convertBST(root *TreeNode) *TreeNode { var pre int var dfs func (root *TreeNode) dfs = func (root * 阅读全文
posted @ 2021-01-28 00:20 童年の波鞋 阅读(101) 评论(0) 推荐(0)
摘要:每行的元素从左到右升序排列;每列的元素从上到下升序排列。找target是否在矩阵中 方法一:感觉跟问题I没啥区别啊! func searchMatrix(g [][]int, tar int) bool { n, m := len(g), len(g[0]) i, j := 0, m-1 for ; 阅读全文
posted @ 2021-01-27 23:39 童年の波鞋 阅读(54) 评论(0) 推荐(0)
摘要:将数组A分成三个部分,他们的和分别等于:L,M,R,求出使得:L<=M,M<=R的方案数 思路:枚举i∈[0,n-1],求一个区间range,使得区间range中任意一个位置k作为M和R的分割点,即都能使得pre[i+1]<=pre[k+1]-pre[i+1]<=pre[n]-pre[k+1],这是 阅读全文
posted @ 2021-01-03 15:32 童年の波鞋 阅读(113) 评论(0) 推荐(0)
摘要:每次从A中选两个数,求满足两数之和是2的幂次方数的个数 思路:记得要枚举所有的2次方数哦 class Solution: def countPairs(self, A: List[int]) -> int: n,ans,mod,E=len(A),0,int(1e9+7),1<<21 mp=colle 阅读全文
posted @ 2021-01-03 12:09 童年の波鞋 阅读(78) 评论(0) 推荐(0)