自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 基础算法(Leetcode)刻意练习训练营:第十九天打卡

今天的题目是100. 相同的树递归 # p and q are both None if not p and not q: return True # one of p and q is None if not q or not p: return False if p...

2020-03-18 22:31:22 114

原创 基础算法(Leetcode)刻意练习训练营:第十八天打卡

今天的题目是10. 正则表达式匹配class Solution(object): def isMatch(self, text, pattern): memo = {} def dp(i, j): if (i, j) not in memo: if j == len(pattern): ...

2020-03-18 22:27:54 119

原创 基础算法(Leetcode)刻意练习训练营:第十七天打卡

今天的题目是5. 最长回文子串这题不会,周末深造class Solution: def longestPalindrome(self, s: str) -> str: if(not s or len(s)==1): return s n=len(s) dp=[[False]*n for _ in range(...

2020-03-16 22:04:49 170

原创 基础算法(Leetcode)刻意练习训练营:第十六天打卡

今天的题目是3. 无重复字符的最长子串用双指针滑动窗口的方式,时间复杂度O(n)class Solution: def lengthOfLongestSubstring(self, s: str) -> int: # 如果字符串s为空,返回0 if not s:return 0 # 保存窗口内字符串 lookup =...

2020-03-16 21:56:20 150

原创 基础算法(Leetcode)刻意练习训练营:第十五天打卡

今天的题目是20. 有效的括号用的是数组模拟栈,字典记录括号关系class Solution: def isValid(self, s: str) -> bool: # 栈数组(存放左括号) left = [] # 如果输入为空,则直接返回True if s == '': return Tru...

2020-03-15 18:48:14 122

原创 基础算法(Leetcode)刻意练习训练营:第十四天打卡

今天的题目是14. 最长公共前缀乍看题目不难,难度也是简单,先弄了一个纯暴力解法。再去看好的题解。class Solution: def longestCommonPrefix(self, strs: List[str]) -> str: # 前缀 pre = '' # 如果长度为空直接返回 if len(strs) ==...

2020-03-14 22:39:29 92

原创 基础算法(Leetcode)刻意练习训练营:第十三天打卡

今天的题目是13. 罗马数字转整数简单的题还是搞的定的,就是效率貌似不高,正常遍历,顺便处理特诉情况class Solution: def romanToInt(self, s: str) -> int: # 7种字母对应数字表 dic = {'I':1, 'V':5, 'X':10, 'L':50, 'C':100, 'D':500, 'M':1...

2020-03-12 23:01:10 128

原创 基础算法(Leetcode)刻意练习训练营:第十二天打卡

今天的题目是23. 合并K个排序链表我表示需要回去继续打基础这个不看题解连思路都没有class Solution: def mergeKLists(self, lists: List[ListNode]) -> ListNode: import heapq dummy = ListNode(0) p = dummy ...

2020-03-12 22:33:59 83

原创 基础算法(Leetcode)刻意练习训练营:第十一天打卡

今天的题目是19. 删除链表的倒数第N个节点class Solution: def removeNthFromEnd(self, head: ListNode, n: int) -> ListNode: p, q = head, head for cur in range(n): if p: p...

2020-03-11 20:58:27 68

原创 基础算法(Leetcode)刻意练习训练营:第十天打卡

今天的题目是2. 两数相加第一种循环:class Solution: def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode: r = re = ListNode(0) carry = 0 while(l1 or l2): x = l1....

2020-03-10 20:59:04 131

原创 基础算法(Leetcode)刻意练习训练营:第九天打卡

今天的题目是141. 环形链表检查链表是否有环的方法以前听过 快慢指针的方法。class Solution: def hasCycle(self, head: ListNode) -> bool: # 如果链表为空或只有一个元素,直接返回没有环 if not head or not head.next:return False # 定义2...

2020-03-08 22:32:16 99

原创 基础算法(Leetcode)刻意练习训练营:第八天打卡

今天的题目是83. 删除排序链表中的重复元素昨天学Django学的忘了做题,今天来补。链表去重,是考察指针使用的基本操作,没有太多花样。class Solution: def deleteDuplicates(self, head: ListNode) -> ListNode: # 新建一个操作位指针,初始指向head cur = head ...

2020-03-08 19:57:34 127

原创 基础算法(Leetcode)刻意练习训练营:第七天打卡

今天的题目是21. 合并两个有序链表从前两天负责的题目又回到了简单的列表,简单归简单,我的脑回路对指针有天然的弱势,这个题之前其实做过,今天第一眼看还是很闷,常见解法有递归和循环两种。递归:class Solution: def mergeTwoLists(self, l1: ListNode, l2: ListNode) -> ListNode: # 如果链1...

2020-03-07 10:30:50 234

原创 基础算法(Leetcode)刻意练习训练营:第六天打卡

今天的题目是123. 买卖股票的最佳时机 III说实话没血动态规划和深度搜索,完全不会做,看了题解,等周末再好好吸收巩固。 if not prices: return 0 dpI0 = [0] * 3 dpI1 = [float('-INF')] + [- prices[0]] * 2 for i in r...

2020-03-05 23:20:33 360

原创 基础算法(Leetcode)刻意练习训练营:第五天打卡

今天的题目是16. 最接近的三数之和这题解法和昨天三数之和是类似的,三指针向内夹,当和目标一致直接返回。class Solution: def threeSumClosest(self, nums: List[int], target: int) -> int: # 特判:n=3,返回sum(nums) n = len(nums) ...

2020-03-04 21:46:47 212

原创 基础算法(Leetcode)刻意练习训练营:第四天打卡

今天的题目是15. 三数之和这道题之前只想到暴力3层循环,后来看题解是先排序然后三指针循环查找,感觉还是挺晕的。class Solution(object): def threeSum(self, nums): if not nums: return [] # 正式处理之前,先将数组排序 nums = sorted(nums) n = len(nums) res ...

2020-03-03 21:53:21 266

原创 基础算法(Leetcode)刻意练习训练营:第三天打卡

今天的题目是27. 移除元素这个题和昨天的很像,先用倒序移除元素的方式来了一遍,OKclass Solution: def removeElement(self, nums: List[int], val: int) -> int: for i in range(len(nums) - 1, -1, -1): if nums[i] == v...

2020-03-02 21:54:28 272

原创 基础算法(Leetcode)刻意练习训练营:第二天打卡

今天的题目是26. 删除排序数组中的重复项阅读题目后有2点需要注意:1.必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。2.输出的结果不是去重后的数组,而是一个整数,而系统会根据这个整数输出数组中的前n个数字,所以需要把不重复的数字集中在列表前面,而后面是什么系统不管。class Solution: def removeDuplicates(self, nums: ...

2020-03-01 21:12:09 124

原创 基础算法(Leetcode)刻意练习训练营:第一天打卡

机缘巧合参加LSGO马老师的刻意练习训练营,和一大群在校学生一起学习。找出10年买的老古董MBP,做题同时要求写博客,刻意练习,加油!!!第一天的题目也是第一题,[《两数之和》](https://leetcode-cn.com/problems/two-sum/),这个题在第一次知道力扣时做过,刚看到这个题其实我除了暴力算法是没有想出其他解法的,虽然我知道暴力算法肯定不是最优解,后来看了别...

2020-02-29 23:31:25 414

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除