From a46c1615e90f0de2a56def8d507f85608ff6853c Mon Sep 17 00:00:00 2001 From: Celia_Wu <530081999@qq.com> Date: Fri, 16 Aug 2019 22:03:11 -0400 Subject: [PATCH] 2019-08-16 --- ...54\345\205\261\347\245\226\345\205\210.py" | 14 +++++-------- ...04\347\232\204\344\271\230\347\247\257.py" | 21 +++++++------------ ...43\346\234\200\345\244\247\345\200\274.py" | 17 +++++++-------- ...\347\273\264\347\237\251\351\230\265II.py" | 16 ++++++++++++++ ...15\345\274\202\344\275\215\350\257\215.py" | 10 +-------- 5 files changed, 37 insertions(+), 41 deletions(-) create mode 100644 "0240.\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II/0240-\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II.py" diff --git "a/0236.\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210/0236-\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210.py" "b/0236.\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210/0236-\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210.py" index 178777d..6d5ec1e 100644 --- "a/0236.\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210/0236-\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210.py" +++ "b/0236.\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210/0236-\344\272\214\345\217\211\346\240\221\347\232\204\346\234\200\350\277\221\345\205\254\345\205\261\347\245\226\345\205\210.py" @@ -13,20 +13,16 @@ def lowestCommonAncestor(self, root, p, q): :type q: TreeNode :rtype: TreeNode """ - - if not root or root == p or root == q: + if root in [p, q, None]: return root else: left = self.lowestCommonAncestor(root.left, p, q) right = self.lowestCommonAncestor(root.right, p, q) - if left and right: #一个在左子树,一个在右子树 + if left and right: return root - elif left:#都在左子树 + elif left: return left - elif right:#都在右子树 + elif right: return right - else: - return - - \ No newline at end of file + \ No newline at end of file diff --git "a/0238.\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257/0238-\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257.py" "b/0238.\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257/0238-\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257.py" index 2065556..f51bc1f 100644 --- "a/0238.\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257/0238-\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257.py" +++ "b/0238.\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257/0238-\351\231\244\350\207\252\350\272\253\344\273\245\345\244\226\346\225\260\347\273\204\347\232\204\344\271\230\347\247\257.py" @@ -4,16 +4,11 @@ def productExceptSelf(self, nums): :type nums: List[int] :rtype: List[int] """ - l = len(nums) - res = [1] * l - for i in range(1,l): - res[i] = res[i - 1] *nums[i - 1] - - p = 1 - for i in reversed(range(l)): - res[i] *= p - p *= nums[i] - - return res - - \ No newline at end of file + res = [1] * len(nums) + for i in range(1, len(nums)): + res[i] = res[i - 1] * nums[i - 1] + tmp = 1 + for i in range(len(nums) - 1, -1, -1): + res[i] *= tmp + tmp *= nums[i] + return res \ No newline at end of file diff --git "a/0239.\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274/0239-\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274.py" "b/0239.\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274/0239-\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274.py" index 81452b3..699c8d5 100644 --- "a/0239.\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274/0239-\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274.py" +++ "b/0239.\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274/0239-\346\273\221\345\212\250\347\252\227\345\217\243\346\234\200\345\244\247\345\200\274.py" @@ -7,20 +7,17 @@ def maxSlidingWindow(self, nums, k): """ if not nums: return [] - - window, res = list(), list() - for i, x in enumerate(nums): - - if window and window[0] <= i - k: + + window = [] + res = [] + for i in range(len(nums)): + if window and window[0] <= i - k: #当前window头应该被弹出 window.pop(0) - while window and nums[window[-1]] < x: + while window and nums[window[-1]] < nums[i]: #比 nums[i] 小的都不要,因为只要窗口的最大值 window.pop() window.append(i) - if i >= k - 1: res.append(nums[window[0]]) - - return res - + return res \ No newline at end of file diff --git "a/0240.\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II/0240-\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II.py" "b/0240.\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II/0240-\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II.py" new file mode 100644 index 0000000..155bcd6 --- /dev/null +++ "b/0240.\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II/0240-\346\220\234\347\264\242\344\272\214\347\273\264\347\237\251\351\230\265II.py" @@ -0,0 +1,16 @@ +class Solution(object): + def searchMatrix(self, matrix, target): + """ + :type matrix: List[List[int]] + :type target: int + :rtype: bool + """ + if not matrix or not matrix[0]: + return False + m, n = len(matrix), len(matrix[0]) + + for i in range(m): + for j in range(n): + if matrix[i][j] == target: + return True + return False \ No newline at end of file diff --git "a/0242.\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215/0242-\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215.py" "b/0242.\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215/0242-\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215.py" index b753222..469e1cd 100644 --- "a/0242.\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215/0242-\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215.py" +++ "b/0242.\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215/0242-\346\234\211\346\225\210\347\232\204\345\255\227\346\257\215\345\274\202\344\275\215\350\257\215.py" @@ -5,12 +5,4 @@ def isAnagram(self, s, t): :type t: str :rtype: bool """ - hashmaps, hashmapt = dict(), dict() - for char in s: - hashmaps[char] = hashmaps.get(char, 0) + 1 - - for char in t: - hashmapt[char] = hashmapt.get(char, 0) + 1 - - return hashmaps == hashmapt - \ No newline at end of file + return sorted(s) == sorted(t) \ No newline at end of file