思考
文章平均质量分 71
日常学习总结与反思
不要把梦想埋没.
藏器于身,待时而动
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++ 二分算法(3)
而原长度 len = right - left + 1,显然 right - mid < right - left + 1(因为 right - mid ≤ right - left)。因此: new_len = right - mid ≤ right - left(因为 mid ≥ left → right - mid ≤ right - left)。由于 mid < right(原 right),新长度 mid - left + 1 < right - left + 1(原长度),原创 2025-10-07 12:52:22 · 1812 阅读 · 0 评论 -
C++ 二分算法(2)
left>right此时 [left,right]这个区间就不存在 所有所有的区间都被遍历了。C++ 二分算法(1)和(2)的两个方法的区别无非就是一个是开区间 一个是闭区间。但是如果是闭区间(left,right) 当left和right什么关系的时候。停止条件 :left>right 区间:[left,right]且left和right的范围始终是target可能的取值范围。且left和right的范围始终是target可能的取值范围。当left 和 right 有一端是mid的情况就可能发生。原创 2025-10-06 12:56:36 · 901 阅读 · 0 评论 -
C++ 二分算法(1)
mid重新计算即可此时 我们判断。原创 2025-10-06 12:55:43 · 1181 阅读 · 0 评论 -
C++ 蓄水池抽样算法
概率都是最后代码奉上。原创 2025-04-22 16:38:18 · 673 阅读 · 0 评论 -
C++ 快速幂算法
暴力算法当然是遍历for循环 循环n遍 但是这样时间复杂度就是O(n) 效率太低了。就是偶数了 这样我们就可以把时间复杂度降低到O(logn)就可以了 这个矩阵的n次方 我们就可以用上快速幂的代码了。F(1) F(0)是已知的 我们只用求。如果是n奇数 我们可以把a存下来 计算。我们来看一个实际应用 斐波那契数列。我们当然可以用动态规划取写它 同时。这样我们就只用计算4次就可以了。我们思考一个问题我们怎么计算。答案是有的 就是快速幂的算法。但是如果n是奇数次方怎么办?有没有更简单的办法?原创 2025-04-22 16:36:31 · 364 阅读 · 0 评论 -
C++ KMP算法·
问题:(主串) m个数据s2="issip"(子串 ) n个数据我怎么才确认在s1中是否存在s2呢?当然我们一眼可以看出来 那计算机怎么办?暴力方法:我们首先在主串中找到 和子串首字符相同的字符s1="mii为指针指向的位置 该指针设为ptr1)s2="issip"" (i为指针指向的位置 该指针设为ptr2)然后我们ptr1 ptr2 同时走 会出现三种情况。原创 2025-04-05 13:19:59 · 1261 阅读 · 0 评论 -
思考:虚函数的调用方式
1.虚函数的调用方式是和普通函数一样 还是通过虚表调用?原创 2025-03-16 08:00:00 · 356 阅读 · 0 评论 -
思考:菱形虚拟继承和多态
菱形继承/虚继承和多态的结构。原创 2025-03-17 08:00:00 · 438 阅读 · 0 评论 -
思考:this指针
哪怕你这函数功能的实现不需要this指针 它也会传 C++把this指针统一交给编译器处理。我们会发现 this 指针是一个很特立独行的东西 类对象调用函数都要传它。因为你派生类你调用的虚函数函数头虽然是基类的 但是this指针 一定是派生类。而且类对象的函数调用的时候 编译器都会去传this指针 这样可以统一。因为你派生类重写的虚函数很可能要用到派生类特有的成员。多态里面的this指针。原创 2025-03-16 08:00:00 · 247 阅读 · 0 评论 -
思考总结:继承
可以 因为派生类有基类对象的成员。原创 2025-03-15 14:12:38 · 434 阅读 · 0 评论
分享