随笔分类 -  数据结构与算法

摘要:用二分法,在一个范围内取中间数看有没有满足求 最大值 的条件(因为是先求最大值,再在最大值中求最小值),一次二分可以否定掉一半的范围,一次次缩减范围,锁定我们要求的数。 假设我们要求的最小 最大值是res。m是二分的中间值,范围[l, r] 范围是开区间还是闭区间要视具体情况而定,这里举例子用的闭区 阅读全文
posted @ 2023-02-05 21:35 balabalahhh 阅读(343) 评论(0) 推荐(0) 编辑
摘要:622. 设计循环队列 - 力扣(LeetCode) C语言 1 typedef struct { 2 int front; 3 int rear; 4 int capcity; 5 int* Elements; 6 } MyCircularQueue; 7 8 9 MyCircularQueue* 阅读全文
posted @ 2022-08-03 10:50 balabalahhh 阅读(28) 评论(0) 推荐(0) 编辑
摘要:“如果一个选手比你小还比你强,你就可以退役了。”——单调队列的原理 作者写的很好,例子也很形象 : 算法学习笔记(66): 单调队列 - 知乎 (zhihu.com) 可以通过做这道题来理解 https://leetcode-cn.com/problems/sliding-window-maximu 阅读全文
posted @ 2022-07-23 10:27 balabalahhh 阅读(61) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/Sungree/article/details/100834974 注意:因为是数组表示(有值的区域里没有空缺),所以这个二叉树是完全二叉树 大顶堆: C语言代码 1 #include <stdio.h> 2 #include <stdlib.h> 3 # 阅读全文
posted @ 2022-07-19 11:14 balabalahhh 阅读(26) 评论(0) 推荐(0) 编辑
摘要:广度优先搜索概念可自行查阅 用二叉树的层序遍历会容易理解很多,如图 层序遍历怎么实现呢 要用到队列(先进先出): 力扣 102.二叉树的层序遍历 这个题的一个难点就是你要把每一层的元素分开,一个一维数组里放一层元素,在C语言写法里可以设一个last参数记录上一层遍历结束时的rear值,这样last与 阅读全文
posted @ 2022-05-26 17:18 balabalahhh 阅读(7) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示