从零开始刷LeetCode
Gregory_1994
这个作者很懒,什么都没留下…
展开
-
从零开始刷LeetCode:[35] 搜索插入位置
题目描述:https://leetcode-cn.com/problems/search-insert-position/description/思路:假设所给数组是[a1,a2,...,an],在左右两边加入无穷大和负无穷大,[-inf,a1,a2,...,an,inf]在数组中寻找ai < target <=ai+1,返回 i按照这种思路,编写代码:class Sol...原创 2019-02-28 15:06:16 · 82 阅读 · 0 评论 -
从零开始刷LeetCode:[217] 存在重复元素
题目描述:https://leetcode-cn.com/problems/contains-duplicate/description/思路:可以用两次迭代解决,但是用时过长:class Solution: def containsDuplicate(self, nums: List[int]) -> bool: length = len(nums) ...原创 2019-03-13 19:00:34 · 100 阅读 · 0 评论 -
从零开始刷LeetCode:[367] 有效的完全平方数
题目描述:https://leetcode-cn.com/problems/valid-perfect-square/description/思路:直接迭代查找,复杂度O(n)O(n)O(n)class Solution: def isPerfectSquare(self, num: int) -> bool: if num == 1: ...原创 2019-03-13 14:33:32 · 88 阅读 · 0 评论 -
从零开始刷LeetCode:[237] 删除链表中的节点
题目描述:https://leetcode-cn.com/problems/delete-node-in-a-linked-list/description/思路:这道题有些难以理解。题目中要求我们删除列表中的中间一个节点,一般的思路是,从链表的首节点开始查找,找到符合要求的节点,然后将上一节点连接到下一节点,这样就删除了当前节点。但是,这道题目并没有给出完整的链表,只给出了需要删除的节点。因...原创 2019-03-13 14:13:19 · 69 阅读 · 0 评论 -
从零开始刷LeetCode:[231] 2的幂
题目描述:https://leetcode-cn.com/problems/power-of-two/description/思路:很简单的一道题:class Solution: def isPowerOfTwo(self, n: int) -&gt; bool: # return n != 0 and n == n&amp;(-n) if n &lt...原创 2019-03-13 10:16:52 · 103 阅读 · 0 评论 -
从零开始刷LeetCode:[19] 删除链表的倒数第N个节点
题目描述:https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list/description/思路:虽然这道题目要求一次遍历得到结果,但是我们可以首先考虑用两次遍历解决问题,然后再考虑用一次遍历得到结果。如果用两次遍历解决,很显然可以想到,第一次遍历得到链表长度,第二次遍历找到要删除的元素上一节点,然后将其删除。值得注意的...原创 2019-03-12 19:20:33 · 83 阅读 · 0 评论 -
从零开始刷LeetCode:[349] 两个数组的交集
题目描述:https://leetcode-cn.com/problems/intersection-of-two-arrays/description/思路:设置空集result存储结果,判断nums1中的数是否在result 和 nums2中:#class Solution: def intersection(self, nums1: List[int], nums2: Lis...原创 2019-03-15 14:14:55 · 149 阅读 · 0 评论 -
从零开始刷LeetCode:[32] 最长有效括号
题目描述:https://leetcode-cn.com/problems/longest-valid-parentheses/description/思路:最开始尝试了暴力解法:假设字符串中的每个字符都是有效字符串的开头,统计分别以它们为开头的最长字符串的长度,最后选择最长的。class Solution: def longestValidParentheses(self, s: ...原创 2019-03-19 14:50:39 · 127 阅读 · 0 评论 -
从零开始刷LeetCode:[11] 盛最多水的容器
题目描述:https://leetcode-cn.com/problems/container-with-most-water/description/思路:按照描述,很容易想到,对所有点进行遍历,选择最大的容积,按照这种思路,编写代码:class Solution: def maxArea(self, height: List[int]) -&amp;amp;gt; int: n =...原创 2019-02-26 16:51:16 · 95 阅读 · 0 评论 -
从零开始刷LeetCode:[15] 三数之和
题目描述:https://leetcode-cn.com/problems/3sum/description/思路:对所给列表进行排序,假设满足条件的数组为 [i,j,k] (i &amp;lt;= j &amp;lt;= k)固定i,寻找满足条件的 j,k,使得 j + k = -i按照这种思路,编写代码:class Solution: def threeSum(self, nums: L...原创 2019-02-27 12:52:39 · 114 阅读 · 0 评论 -
从零开始刷LeetCode:[2] 两数相加
class Solution: def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode: re = ListNode(0) r=re carry=0 while l1 or l2: x= l1.val if l1 else 0...原创 2019-03-01 19:10:09 · 124 阅读 · 0 评论 -
从零开始刷LeetCode:[867] 新21点
题目描述:https://leetcode-cn.com/problems/transpose-matrix/description/思路:这道题目要求输出矩阵的专职,很自然地想到可以利用numpy模块中的函数transpose() ,那么代码可以写成这样:class Solution: def searchInsert(self, nums: List[int], target: ...原创 2019-03-01 11:02:14 · 297 阅读 · 0 评论 -
从零开始刷LeetCode:[28] 实现strStr()
class Solution: def strStr(self, haystack: str, needle: str) -> int: if needle == '': return 0 elif len(needle) > len(haystack): return -1 ...原创 2019-02-28 17:25:39 · 142 阅读 · 0 评论 -
从零开始刷LeetCode:[136] 只出现一次的数字
题目描述:https://leetcode-cn.com/problems/single-number/description/思路:如果用循环解决,复杂度为O(n2)O(n^2)O(n2)。如果用位运算(异或),则只需要一次遍历:class Solution:class Solution: def singleNumber(self, nums: List[int]) ->...原创 2019-03-13 19:15:08 · 124 阅读 · 0 评论