数据结构与算法
文章平均质量分 53
数据结构与算法
iii_ooo
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二分查找的两种方式
文章目录前言一、基于递归思想二、循环查找 前言 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/binary-search 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 一、基于递归思想 class Solution { public int[.原创 2022-01-22 14:34:07 · 236 阅读 · 0 评论 -
基于堆排序的选择方法
文章目录前言一、堆排序实现二、PriorityQueue 前言 求数组中第K个最大元素,源自Letcode 一、堆排序实现 class Solution { public int findKthLargest(int[] nums, int k) { int heapSize = nums.length; buildMaxHeap(nums, heapSize); for (int i = nums.length - 1; i >= nums原创 2022-01-19 15:38:28 · 277 阅读 · 0 评论 -
Manacher Algorithm马拉车算法详解
Manacher Algorithm马拉车算法详解 链接:https://www.zhihu.com/question/37289584/answer/465656849 中心扩展算法 我们先来看一个简单的算法,来解决这个问题。我们知道回文串一定是对称的,所以我们可以每次循环选择一个中心,进行左右扩展,判断左右字符是否相等即可。 由于存在奇数的字符串和偶数的字符串,所以我们需要从一个字符开始扩展,或者从两个字符之间开始扩展,所以总共有 n + n - 1 个中心。代码就很好写了,遍历每个中心,然后判断对转载 2021-11-09 11:36:11 · 231 阅读 · 0 评论
分享