算法与数据结构
1111
欲滴007
这个作者很懒,什么都没留下…
展开
-
【二分查找法】
二分查找法。原创 2022-10-19 22:22:38 · 160 阅读 · 1 评论 -
【二分查找】875. 爱吃香蕉的珂珂
珂珂可以决定她吃香蕉的速度 k (单位:根/小时)。每个小时,她将会选择一堆香蕉,从中吃掉 k 根。如果这堆香蕉少于 k 根,她将吃掉这堆的所有香蕉,然后这一小时内不会再吃更多的香蕉。返回她可以在 h 小时内吃掉所有香蕉的最小速度 k(k 为整数)。输入:piles = [30,11,23,4,20], h = 5。输入:piles = [30,11,23,4,20], h = 6。输入:piles = [3,6,7,11], h = 8。珂珂喜欢慢慢吃,但仍然想在警卫回来前吃掉所有的香蕉。原创 2022-10-17 23:16:26 · 104 阅读 · 0 评论 -
【二分查找】查找大于target的最小值 ☆☆☆☆☆
【代码】【二分查找】查找大于target的最小值。原创 2022-10-16 22:05:20 · 110 阅读 · 0 评论 -
【快速排序】select k查询
215. 数组中的第K个最大元素给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。/*** 功能:给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。* 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。* 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。*原创 2022-10-16 09:55:19 · 192 阅读 · 0 评论 -
【快速排序】
三路快速排序解决了 一个相同元素数组时间复杂度为 o(n²)问题,而一个有序数组时间复杂度为 o(n²) 解决方式则为使用左侧替换随机索引值解决。问题:如果是个等值数组,元素够多会造成栈溢出。时间复杂度为 o(nlogn)原创 2022-10-15 14:33:19 · 362 阅读 · 0 评论 -
【 归并排序】
有序的归并排序是 o(n)级别 -->n/2+n/4+n/8+…因为每一层都不需要merge,每两个叶子节点都通过一个节点生成的。o(nlogn)级别,因为每一层处理数据量是 o(n)级别,一共有 logn 层。归并排序是无法原地排序的。原创 2022-10-08 23:07:55 · 89 阅读 · 0 评论 -
【归并排序】统计逆序对个数
在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。比如一个序列为 4,5,1,3,2, 那么这个序列的逆序数为7,逆序对分别为(4, 1), (4, 3), (4, 2), (5, 1), (5, 3), (5, 2),(3, 2)。原创 2022-10-08 20:35:13 · 241 阅读 · 0 评论 -
【链表】递归翻转链表 和 正常链表翻转
【代码】【链表】递归翻转链表。原创 2022-09-25 17:40:10 · 164 阅读 · 0 评论 -
链表递归
【代码】链表递归。原创 2022-09-25 09:19:55 · 75 阅读 · 0 评论 -
循环队列 和 链表队列
【代码】循环队列。原创 2022-09-19 22:16:52 · 227 阅读 · 0 评论 -
插入排序 和 选择排序
时间复杂度是:1+2+3+…+n ==> (1+n) * n /2 ==> ½ * n² + ½ * n ==> o(n ²)对于有序的插入排序,它的时间复杂度是 o(n),但是整体一般认为 o(n²)。循环不变量:[0,i)是排好序的,[i,n) 是无序的。不开辟新数组空间排序。类似于扑克牌插入排序。原创 2022-09-18 21:58:04 · 122 阅读 · 0 评论 -
栈的语法匹配问题解决
给定⼀个字符串,只包含 ( , [ , { , ) , ] , } ,判定字符串中的括号匹配是否合法。 * 如 ”()” , “()[]{}” 是合法的 * 如 “(]”, ”([)]” 是⾮法的原创 2022-09-18 19:17:06 · 85 阅读 · 0 评论 -
secureCRT的文件上传技巧
Git:原创 2019-07-03 15:25:27 · 118 阅读 · 0 评论