数据结构与算法
lianjiesone
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二分查找
对于二分查找需要考虑区间:左闭右闭,左闭右开 二分查找会出三种题型: 1.返回可以插入的位置 2.重复元素出现的上界和下界 1.返回可以插入的位置:左闭右闭 class Solution { public int searchInsert(int[] nums, int target) { //二分查找 int left = 0; int right = nums.length - 1; //闭区间 while(left <= right){原创 2021-03-10 10:30:00 · 145 阅读 · 0 评论 -
环形队列判断队满
在引用循环队列前,我们需要了解队列是如何线性实现的(下图有错,x=sq[front++])。 简单地讲,便是当队列为空时,front = rear = 0,每当插入元素尾指针+1,删除元素是头指针+1。但是,我们会发现一个问题,如上面的第四个图,0,1,2三个空间并没有使用。因此,为了占用该空间,我们使用了循环队列来实现。 循环队列原理图: 我们可以发现,当循环队列属于上图的d1情况时,是无法判断当前状态是队空还是队满。为了达到判断队列状态的目的,可以通过牺牲一个存储空间来实现。 如上图d2所示, 队头原创 2020-12-28 17:47:49 · 2851 阅读 · 0 评论
分享