![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法学习
文章平均质量分 87
wcy1034036507
这个作者很懒,什么都没留下…
展开
-
算法学习笔记2:凸包及其解法
凸包及其解法凸包概念解法暴力解法判断方向分治点到直线距离Jarvis步进法Graham扫描法Andrew算法凸包概念在一个实数向量空间V中,对于给定集合X,所有包含X的凸集的交集S被称为X的凸包。X的凸包可以用X内所有点的凸组合来构造。在二维欧几里得空间中,凸包可以想象为一条包着所有点的橡皮绳。对于一个集合D,D中任意有限个点的凸组合的全体称为D的凸包。对于一个集合D,所有包含D的凸集的交集称为D的凸包。这两种定义是等价的。解法暴力解法每次枚举两个点,这两个点确定一条直线,如果剩余的原创 2022-04-23 13:32:39 · 622 阅读 · 0 评论 -
算法学习笔记1:快速乘/幂算法详解
快速乘/幂详解快速乘/幂详解快速乘/幂适用范围快速乘/幂实现原理C++实现快速乘/幂详解快速乘/幂适用范围快速乘算法适用于计算a*b、a%b、a mod b的结果,主要目的是将乘法换为加法,防止结果过大溢出;快速幂算法适用于计算a^b、a%b、a mod b的结果,降低时间复杂度。快速乘/幂实现原理基于按照二进制位一步一步乘来避免重复的操作,利用前面的中间结果,从而实现快速的目的。对于乘数b,必定可以拆成二进制,有些位为0有些为1。根据乘法分配律:a∗b=a∗(b1+b2+b3...)a*b原创 2021-10-13 18:42:00 · 538 阅读 · 0 评论