上一页 1 2 3 4 5 6 7 8 ··· 15 下一页
摘要: [题目链接](169. 多数元素 - 力扣(LeetCode)) 解题思路:想象一个打怪的场景。有很多个部落,不同的部落之间会相互攻击。找到大于一半数目的元素。假设是x这个部落。就算其他的部落全部一起攻击这个部落,这个部落仍然会赢,因为大于了一半。 用一个变量:HP,代表现在还剩的血量 另一个变量c 阅读全文
posted @ 2025-01-09 10:12 ouyangxx 阅读(12) 评论(0) 推荐(0)
摘要: [题目链接](162. 寻找峰值 - 力扣(LeetCode)) 解题思路:题目有一个很重要的前提是:对于所有有效的 i 都有 nums[i] != nums[i + 1]。先看开头和结尾,如果nums[0] > nums[1]或者nums[n - 1] > nums[n - 2],那么可以直接返回 阅读全文
posted @ 2025-01-09 10:04 ouyangxx 阅读(14) 评论(0) 推荐(0)
摘要: [题目连接](160. 相交链表 - 力扣(LeetCode)) 解题思路:短链表长度为x,长链表长度为y,想让长链表走y - x,然后两个链表同时走,如果相遇直接返回,否则返回空即可。 注意,题目明确了,两个链表无环 代码 class Solution: def getIntersectionNo 阅读全文
posted @ 2025-01-09 09:35 ouyangxx 阅读(12) 评论(0) 推荐(0)
摘要: [题目链接](155. 最小栈 - 力扣(LeetCode)) 解题思路:一个栈用来存储数据(数据栈),另一个栈用来放当前的最小值(最小栈)。 当前最小值是什么?push一个数x,如果最小栈不为空,且最小栈栈顶元素小于x,那么接着push最小栈栈顶元素;否则push当前的x pop时,两个栈同时po 阅读全文
posted @ 2025-01-09 09:22 ouyangxx 阅读(15) 评论(0) 推荐(0)
摘要: [题目链接](152. 乘积最大子数组 - 力扣(LeetCode)) 解题思路:子数组问题,考虑【以i结尾】结果是什么,求出所有的结果,最大的那个就是结果。 【以i结尾】结果是什么?我们可以利用【i-1】计算过的内容。 nums[i]如果是0,那么结果就是0 nums[i]如果大于0,那么我们就希 阅读全文
posted @ 2025-01-08 21:22 ouyangxx 阅读(18) 评论(0) 推荐(0)
摘要: [题目链接](150. 逆波兰表达式求值 - 力扣(LeetCode)) 解题思路:用一个栈,遇到数字压进去,遇到运算符则计算后压入栈 代码 class Solution: def evalRPN(self, tokens: List[str]) -> int: stack = [] ans = 0 阅读全文
posted @ 2025-01-08 21:01 ouyangxx 阅读(8) 评论(0) 推荐(0)
摘要: [题目链接](149. 直线上最多的点数 - 力扣(LeetCode)) 解题思路:两个for循环。某一条直线,必须经过第一个点,最多经过多少点?某一条直线,必须经过第二个点,最多经过多少个点?以此类推,最多的那个结果,就是答案。 怎么知道必须经过某个点的【直线】,最多经过多少点?例如现在必须经过的 阅读全文
posted @ 2025-01-08 20:18 ouyangxx 阅读(18) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:在链表上使用排序算法。注意,不能使用快排,因为快排的最差时间复杂度是O(n^2),数组形式的快排,以随机数划分能够得到O(n*logn),但是链表的形式,不太好以随机数的方式划分。所以最好的排序方法是使用归并排序。 先用快慢指针,将链表分成两部分,然后两部分分别归并排序,得到两个 阅读全文
posted @ 2024-12-27 17:15 ouyangxx 阅读(9) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:用链表+哈希表。链表从头串到尾,淘汰时,从尾部开始淘汰。每次get时,如果找到了,则把这个节点移到头部。每次put,新建一个节点,放在头部,如果容量不够了,则淘汰尾部的数据。哈希表的作用是,能快速通过key找到链表中的节点。 代码 class LRUCache: class No 阅读全文
posted @ 2024-12-27 16:35 ouyangxx 阅读(17) 评论(0) 推荐(0)
摘要: 题目链接 解题思路:一个快指针,一个慢指针,如果二者相等了,说明有环。如果快指针为空了,说明没环 代码 # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # s 阅读全文
posted @ 2024-12-27 15:35 ouyangxx 阅读(6) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 ··· 15 下一页