(rear + maxSize - front) % maxSize 公式的理解
在B站上看韩顺平老师关于数据结构与算法的视频时,在对环形队列进行实现的代码中,有一个公式 (rear + maxSize - front) % maxSize。虽然我认为可以定义一个成员变量,在添加和删除是分别对其进行++ 或 --,但是为了锻炼思维,所以研究了一下这个公式。在对算法的理解中,我主要是带入实例进行思考,所以下面将以实例进行讲解。
- 首先是关于 % maxSize 的的理解。假设数组的length 为4,front=2,rear = 3,当还想在队列中添加元素时,是不是要在下标为0的位置添加呢?因此需要rear = 3 再加1之后得到rear = 0,所以采用 %的方式,(rear + 1)%4 =0。同理, % maxSize在这个公式中的作用也是这样。
- - front的理解。首先 (rear + maxSize - front) % maxSize代表队列中有效元素的个数。举例解释:如果在队列中取走一个值,有效元素会减一,front下标(该处的front不是指公式中的front,而是指队列中的第一个元素)会加一,因此front与有效元素呈现负相关的关系,所以要以 - front的形式出现在该公式中。
- +rear的理解同上。
(rear + maxSize - front) % maxSize 公式的理解相关推荐
- 区间再现公式的理解与应用
前往我的主页以获得更好的阅读体验区间再现公式的理解与应用 - DearXuan的主页https://blog.dearxuan.com/2022/05/07/%E5%8C%BA%E9%97%B4%E5 ...
- [读书笔记] 从问题和公式角度理解 Diffusion Model
[小全读书笔记] 从问题和公式角度理解 Diffusion Model 1. Diffusion Model的结构 1.1 定义与限制 1.2 定义与限制的数学体现 2. Diffusion Mode ...
- 【单应变换】通过空间平面诱导的单应公式的理解
[单应变换]通过空间平面诱导的单应公式的理解 公式:H=K2R2(I+(C1−C2)nTnTX)R1−1K1−1H = K_2 R_2(I + \frac{(C_1 - C_2)n^T}{n^TX}) ...
- 对傅里叶变换公式的理解
对傅里叶变换公式的理解 为什么要进行傅里叶变化 很多时候,频域比时域直观的多. 傅里叶变换,表明时域的信号可以分解为不同频率的正弦波的叠加.我们接受来自一段非周期信号的时候,可以更好的处理. 举个例子 ...
- pagerank公式的理解
节点y被a与y所指,所以节点y的重要程度就是将他们汇总起来:节点a指向y的占据了a的一半,因为它还同时指向了节点m:节点y也是同样的道理:节点y也指向了两个节点,一个是自身,一个是节点a: 从另一个角 ...
- 傅里叶变换公式_理解1维傅里叶变换
上个学期,学习了信号与系统.虽然知道了傅里叶变换的作用以及如何使用.但是对于它的本质,也就是FT是如何探测到频率的尚有疑惑. 而恰好在知乎上发现了一些很好的回答.故将这些回答整理在这. 感性理解1维F ...
- 错排公式的理解与推导(转载)
转自: ①:https://www.cnblogs.com/ECJTUACM-873284962/p/7620370.html ②:https://www.cnblogs.com/c129940122 ...
- 原码的定义公式怎么理解_原码、反码、补码
一. 机器数和机器数的真值 在学习原码,反码和补码之前, 需要先了解机器数和真值的概念. 1.机器数 一个数在计算机中的二进制表示形式,叫做这个数的机器数.机器数是带符号的,在计算机用机器数的最高位存 ...
- GAN的理论知识及公式的理解
文章目录 对于GAN的理解 GAN的公式理解 代码实现 参考资料 对于GAN的理解 借用参考资料[1]中对于GAN的描述: 假设一个城市治安混乱,很快,这个城市里就会出现无数的小偷.在这些小偷中,有的 ...
- 关于《信号与系统》单边z变换位移性质公式的理解
关于b站<信号与线性系统分析 郭宝龙>的视频p155中有弹幕提出单边z变换的平移性质相关疑问,考虑到公式实在难记,这里给出理解记忆方案.
最新文章
- Linux云服务器上python画图并保存
- 让Flash背景透明兼容Firefox、IE 6和IE 7的代码
- Altium Designer chapter6总结
- 电子美图更新36张!
- mysql的介绍和安装
- LeetCode 169. 多数元素 (哈希映射|投票算法)
- 跨平台移动端开发 NativeScript ——创建JavaScript原生移动应用
- 使用Python成功调用大漠插件方法
- 小学五年级计算机课评课,小学生信息技术课《复制与变换》评课稿
- Unity移动视角(MainCamera的操作)
- 高质量编辑和压缩pdf
- css3中-moz、-ms、-webkit各什么意思
- 【arcgis中两种路网密度计算结果对比】
- linux磁盘配额步骤,Linux磁盘配额设置及使用
- 1045-Access denied for user 'root'@ip(useing password YES)远程连接
- imap服务器收缓存pst文件夹,Outlook 转移OST数据文件 IMAP账户
- 双麦定向拾音束回音消除及远场拾音降噪模块 A-68测试1-(原理篇)
- 立创EDA助力2021全国电赛数百万奖学金!
- MySQL数据库入门学习教程(mysql基础+高级)
- Postgresql逻辑复制DDL插件pgl_ddl_deploy