本次更新内容:2.14图论例题补充
目录
1 技巧
1.1 取消同步(节约时间,甚至能多骗点分,最好每个程序都写上)
1.2 万能库(可能会耽误编译时间,记不住头文件就用这个)
1.3 return 0
1.4 编译设置(Dev C++)
1.5 memset、fill填充函数
1.5.1 memset
1.5.2 fill
1.6 时间复杂度
1.6.1 常数阶 O(1)
1.6.2 对数阶 O(logn)
1.6.3 线性阶 O(n)
1.6.4 线性对数阶 O(nlogn)
1.6.5 多重循环 O(n^k)
1.7 剪枝
1.8 find函数
1.9 PI问题
1.10 C/C++帮助文档
1.11 最大空间
1.11.1 占用字节大小
1.11.2 常用数据范围
1.12 指针存字符串(了解)
1.13.1 求日期差(excel)
1.13.2 求日期差(计算器)
1.13.3 求星期几(excel)
1.13.4 例题(excel+word)
1.13.5 日期常用函数
1.14 字符串的精读
1.15 约瑟夫环
1.16 文件读取
1.17 输入流/输出流进制控制
1.18 setbase+setw+setfill
2 算法+数据结构
2.1 BFS(宽度优先搜索)
2.2 DFS(深度优先搜索)
2.3 最大公约数(greatest common divisor,gcd)和最小公倍数(least common multiple,lcm)
2.3.1 手写
2.3.2 套用库函数
2.4 进制转换+超大数据处理
2.4.1 十进制为媒介(常用型)
2.4.2 二进制为媒介(技巧型)(含超大数据处理)
2.5 二进制表示法
2.6 背包问题
2.7 动态规划(DP)
2.8 贪心
2.9 分治(以后更新)
2.10 数字分拆到数组中
2.11 数字和字符串的互化
2.12 排序
2.13 冒泡排序法和二分查找法(最常用)
2.14 图论
2.15 常用树的模板
2.16 快速幂算法
2.17 质因数算法
2.18 递归
2.19 STL
2.20 尺取法
2.21 倍增法(ST算法)(以后更新)
2.22 KMP算法
2.23 LIS算法和LCS算法
2.24 树状数组
2.25 二分法
3 C语言容易出错的问题
1 技巧
1.1 取消同步(节约时间,甚至能多骗点分,最好每个程序都写上)
ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);
1.2 万能库(可能会耽误编译时间,记不住头文件就用这个)
#include
1.3 return 0
1.4 编译设置(Dev C++)
(1)工具->编译选项->编译器->编译时加入以下命令->调成C99
(2)工具->编译选项->代码生成/优化->代码生成->语言标准
1.5 memset、fill填充函数
1.5.1 memset
按照字节对内存块进行初始化,注意只能填充0或-1
#include using namespace std; int a[10]; int main() { memset(a,-1,sizeof(a)); for(int i=0;i