数据结构和算法
hyk_1996
智能科学与技术
展开
-
数据结构和算法笔记(2)基础算法模板
有很多的基础算法经常会用到,但是又容易写错。而网上查到的实现又五花八门、良莠不齐,故在此整理记录。 本文的目录如下: 1.二分查找 1.二分查找 一个细节就是计算middle时,用 (left + right) / 2 容易数值溢出,所以改成 middle = left + (right - left) / 2. c++实现: #define LEFT_BOUND 0 #def...原创 2020-02-07 00:18:17 · 247 阅读 · 0 评论 -
数据结构和算法笔记(1)数论相关
最近在刷编程题,发现了许多杂七杂八的知识点,稍微归类并记录下来方便后续查阅。 本文的目录如下: 1.组合数 2.快速幂 3.大数取模(乘法逆元和费马小定理) 4.菲波拉契数列 1.组合数的求法 组合数,为了方便也写作C(n, k),表示从n个不同元素中取出k (k≤n)个元素的所有组合的个数。 我们知道存在公式C(n, k) = [n*(n-1)*(n-2)*.....原创 2019-07-10 17:44:44 · 464 阅读 · 0 评论 -
编程时踩过的坑(主要是c++)
1.数值溢出 存储数据时要考虑数值溢出的问题,选择合适的类型,特别要注意数值运算时的数值范围是否合适。比方说,如果使用了int类型,尽管数据本身没有超范围,但是在进行乘法计算时却可能会产生数值溢出。 c++类型的数值范围速查表: Type Typical Bit Width Typical Range char 1byte -127 to 127 or 0 to ...原创 2019-07-17 14:49:53 · 778 阅读 · 1 评论