摘要:
给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。 你可以假设 nums1 和 nums2 不会同时为空。 一看到时间复杂度O(log)就知道应该二分法,我自己写的一段程序老是报错,这里就直接 阅读全文
摘要:
转自 https://leetcode-cn.com/problems/longest-palindromic-substring/solution/zhong-xin-kuo-san-dong-tai-gui-hua-by-liweiwei1419/ 阅读全文
摘要:
收获: 1.复习了正则表达式, re.findall() 返回的是符合条件的list 2. 当涉及到与全球变量比较大小,或者有边界值的时候需要灵活使用 min max 3. 学习到了 * 的用法,*只可在传参中使用 class Solution: def myAtoi(self, str: str) 阅读全文
摘要:
今天用 re.findall()返回的是一个List,我想取前几个元素 于是: print(*re.findall('^[+-]?\d+',str.lstrip())) # 42 但是自己在pycharm里赋值就GG: b = *re.findall('[+-]?\d+',a) # SyntaxEr 阅读全文
摘要:
https://blog.csdn.net/Shadow_heaven/article/details/89405282 先说在线安装,首先打开Anaconda Prompt,就是Anaconda的命令行 1. 用conda install pkgname即可,pkgname为包名 2. 当找不到包 阅读全文
摘要:
合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 本题我掌握了两个方法: 1. 遍历所有链表,将其 nodes 的 val 放入一个list, 然后list.sort(),然后再放入链表result O(NlogN) 2. 就是我用的方法,先写合并两个链表的函数,再分而治之的合 阅读全文
摘要:
给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 开心,这题用15题的方法一遍过。 相同点: 1. 排除 len(nums) < 3 的情况 2. 先排序 3. 阅读全文
摘要:
给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。 我一拿到这题,就想着暴力破解,三重循环,i<j<k,这样也不用担心遍历重复了,但是这题还要考虑,给定的数组 nums 里元素重复。 答案 阅读全文
摘要:
从这道题,我学到了怎么新建一个链表,假如我要把一串内容放入链表: for i in range(length): if i == 0: ll = ListNode(int(sumNum[i])) p = ll else: p.next = ListNode(int(sumNum[i])) p = p 阅读全文
摘要:
给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 本题自己乱写,在第277/311 个测试case的时候超时了, GG。 要注意的地方就是在写两数相加的函数的时候,要注意,最后一位的相加如果进位了,要注意加上去,不然就会 阅读全文