![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 74
只有小松了
这个作者很懒,什么都没留下…
展开
-
5道题,教你参破滑动窗口的解法
前言 所谓窗口,就是一个连续的封闭集合,一般是用left与right指针来表示,但是也会根据题意变化,比如下面这道题 187. 重复的DNA序列 所有 DNA 都由一系列缩写为 ‘A’,‘C’,‘G’ 和 ‘T’ 的核苷酸组成,例如:“ACGAATTCCG”。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。 编写一个函数来找出所有目标子串,目标子串的长度为 10,且在 DNA 字符串 s 中出现次数超过一次。 简单说就是字符串中找到长度为10的,多次出现过的子串 class Sol原创 2022-01-17 19:50:39 · 588 阅读 · 0 评论 -
关于栈,你不可不知道的骚操作
栈这个数据结构大家应该很了解了,简单说就是先进后出,就像桶一样,只有一个口,先放进去的东西在下面,后来的东西在上面 说来惭愧,我一直觉得比起多种多样的队列,栈就这点东西了,今天给大家介绍一种栈,叫做【单调栈】,本文会分为两个部分,第一部分直接使用单调栈解题。第二部分会用一个较难的题,需要用到单调栈思想。 单调栈结构 题目如下: 给定一个不含有重复值的输入a,找到每一个i位置左边和右边离i位置最近,且值比arr[i]小的位置,返回所有位置的信息 举例: arr = {3,4,1,5,6,2,7} 返回结果原创 2021-07-09 10:29:06 · 240 阅读 · 3 评论 -
【视频】硬核5 分钟主方法推导过程
在归并排序或者和二叉树相关的算法中,我们需要将处理的数据,分割成两部分,然后再组合,此时关于时间复杂度,就成为了这样 T(N) = 2T(N/2) + O(N) 我们知道,归并排序的时间复杂度是 O(NlogN),那么这是怎么推导出来的呢?或者说更抽象一点,类似于这种分治手段的时间复杂度怎么计算呢?在《算法导论》中提出了主方法的概念,如下 正如图中所示,由于a,b的不同关系,T(n)有三种可能性,接下来就来详细推导这个过程。 首先我们先得做一个假定,T(1)=1,因为如果数据只有一个的话,我们根本不需要原创 2021-02-24 16:59:38 · 164 阅读 · 0 评论 -
【红黑树】背了又忘?深入本质,他也不过是一棵二叉树
目录前言二叉树二三树查找插入二三树生长过程红黑树小结 前言 小松最近好久没有更新文章了,是小松懒了吗? 是的 自从小松拿到了公司的测试机,近5000的小米10 Pro,还有因为内推几十个人得到的airpods pro奖品,还有公司每月发的Q币和点券,于是我的周末变成了这样。 早上10点来公司,信心满满准备好好学一天,看到小米10,心想,要不玩一把王者? 公司的网还贼好,下载近5~6m/s,开局全程50延迟以下,然后打开mac,上爱奇艺播放4k杜比漫威大片,在28寸大屏下当背景音,带上airpods,世界只剩原创 2020-10-14 20:04:59 · 426 阅读 · 0 评论