先来的乘客,在时间逐渐增大的时候会先出列。因此,可以用队列模拟整个过程。 • 队列里面存每⼀个乘客,需要 存储乘客的编号还有进队的时间(我们可以使用一个pai...
创建前缀和矩阵:f[i][j] = f[i − 1][j] + f[i][j − 1] − f[i − 1][j − 1] + a[i][j]
队列也是⼀种访问受限的线性表,它只允许在表的⼀端进行插入操作,在另⼀端进行删除操作。 • 允许插入的⼀端称为队尾,允许删除的⼀端称为队头。 • 先进入队列的...
这道题其实就是模拟题目的过程有两种做法:使用C++提供的STL 或者自己模拟个栈 唯一要注意的是:数据范围(x的范围)
解法就是如果是一就把k放到第i个柜子的第j个格子如果是2输出即可 注意:这道题ai是未知的使用二维数组会报错(数组开辟空间过大),故使用vector,因为ve...
这道题考点是模拟,我们通过遍历用一个变量len来记录合法区间的长度,当遍历的不合法的元素时利用一个变量ret来更新结果 注:此题最小合法区间长度为1,当我们每...
线性表是n 个具有相同特性的数据元素的有序序列。 线性表在逻辑上可以想象成是连续的⼀条线段,线段上有很多个点,⽐如下图:
树型结构是⼀类重要的 非线性数据结构 • 有⼀个特殊的结点,称为根结点,根结点没有前驱结点。 •除根结点外,其余结点被分成 个互不相交的集合,其中每⼀个集合...
线性表的链式存储就是链表。它是将元素存储在物理上任意的存储单元中,由于无法像顺序表⼀样通过下标保证数据元素之间的逻 辑关系,链式存储除了要保存数据元素外,还需...
递归难理解抽象,很难想到递归的方式,这个不急,慢慢来 (1)目前阶段就是理解递归的执行流程,以及尝试简单的递归,能写出简单的递归代码就好。 (2)后续的数据...
首先我们要明确我们要输出的是最小的连续因子序列,也就是如果有两端长度相同的序列取小的那一段就可以了
(1)首先此题的题是眼按顺序划分成若干个连续的小组(即子区间),并且要满足区间内奇偶数数量相等,那我们便可以使用前缀和数组ans,遇到奇数:+1 ,遇到偶数:-...
注意: 这道题有三个陷进:1.t 即除数可能为零 2.苹果可能在规定时间内吃完也为0
本题相当于告诉了我们每⼀个点的后继,用静态链表的存储方式能够很好的还原这个队列。 数组中[1, n] 的下标可以当做数据域,根据题意修改指针域即可。
前缀和与差分的核心思想是预处理,可以在暴力枚举的过程中,快速给出查询的结果,从而优化时间复杂度。是经典的用空间替换时间的做法
这道题的策略是先对两个数组进行排序(从大到小或者从小到大都可以),已从小到大为例,取最大知识量与知识接受上限量最大的同学匹配,不符合就取次大的知识量去匹配,依次...
首先这道题要先看出,只有当编号为[1,i−1] 之间的所有的房间线索都被解开时,该房间的线索才能被解开,故我们只能按照房间编号的顺序来访问房间