力扣hot100
文章平均质量分 75
西西,正在减肥
这个作者很懒,什么都没留下…
展开
-
常考100
3. 再交换堆顶元素与倒数第二个元素,然后调整第一个元素到倒数第三个元素,这一步获取第二大值。# 2. 让堆顶最大元素与最后一个交换,然后调整第一个元素到倒数第二个元素,这一步获取最大值。# 4. 以此类推,直到最后一个元素交换之后完毕。136.只出现一次的数字。# 1. 先建立大顶堆。原创 2024-08-14 12:15:08 · 296 阅读 · 1 评论 -
常考常考高频率
【代码】常考常考高频率。原创 2024-08-07 17:58:59 · 170 阅读 · 0 评论 -
top30
【代码】top30。原创 2024-08-07 17:58:15 · 170 阅读 · 0 评论 -
python数据结构与算法
列表排序 内置函数 sort()常见的排序算法差生三人组O(n^2)好生三人组O(nlogn) 【运行时间:快排<归并<堆排序】其他排序冒泡排序快速排序:极端情况,排序效率低希尔排序选择排序堆排序:在快的排序算法中相对较慢计数排序插入排序归并排序:需要额外的内存开销基数排序稳定性:排序后 2 个相等键值的顺序和排序之前它们的顺序相同。原创 2024-07-29 22:34:49 · 1428 阅读 · 0 评论 -
力扣hot100|【1-9】哈希、双指针、滑动窗口
【代码】力扣hot100|哈希、双指针、滑动窗口原创 2024-05-19 23:38:17 · 257 阅读 · 0 评论 -
【leetcode10-21】子串、普通数组、矩阵
什么是:前缀和指一个数组的某下标之前的所有数组元素的和(包含其自身)通常,会在前缀和首位放一个0。比如数组[1,2,3。其前缀和是[0,1,3,6]。比如我们要算i,ji,ji,j之间的和,那么就是nums[i]+nums[i+1]+⋯+nums[j]nums[i]原创 2024-06-03 22:38:28 · 765 阅读 · 0 评论 -
【leetcode22-36】链表
方法二:迭代,初始化一个空链表,每次循环,往链表的末尾添加一个节点。注意:是先让快慢指针跑起来,再看,快慢指针是否会相遇。原创 2024-06-04 19:44:29 · 354 阅读 · 0 评论 -
【leetcode37-51】二叉树
二叉树的直径,因为他不一定经过root,但是,最长路径,一定是有个公共祖先,所以,只要有个全局变量self.max记录就行。原创 2024-06-19 16:54:49 · 384 阅读 · 0 评论 -
【leetcode52-55图论、56-63回溯】
图论回溯原创 2024-07-03 21:05:55 · 256 阅读 · 0 评论 -
【leetcode64-69二分查找、70-74栈、75-77堆】
left = 0else :i -= 1j += 1# 1、首先,在 nums 数组中二分查找得到第一个大于等于 target的下标leftBorder;# 2、在 nums 数组中二分查找得到第一个大于等于 target+1的下标, 减1则得到rightBorder;# 3、如果开始位置在数组的右边或者不存在target,则返回[-1, -1]。原创 2024-07-03 23:00:30 · 448 阅读 · 0 评论 -
【leetcode78-81贪心算法、技巧96-100】
贪心算法【78-81】技巧【96-100】原创 2024-07-04 22:10:35 · 559 阅读 · 0 评论 -
【leetcode82-91动态规划,91-95多维动态规划】
动态规划【82-91】多维动态规划【91-95】原创 2024-07-04 22:12:19 · 453 阅读 · 0 评论