- 博客(6)
- 收藏
- 关注
原创 C++ 模板
函数模板 函数模板除了支持值的参数化,还支持类型的参数化。 template<typename/class T> 返回值类型 函数名(参数表){ } template是定义函数模板的关键字,它后面紧跟尖括号<>,尖括号包围的是类型参数(也可以说是虚拟的类型,或者说是类型占位符)。typename是另外一个关键字,用来声明具体的类型参数,这里的类型参数就是T。从整体上看,*template*被称为模板头。 模板头中包含的类型参数可以用在函数定义的各个位置,包括返回值、形参列表和函数体
2022-03-01 17:19:12
67
1
原创 C++ 虚函数
虚函数多态性实现条件虚函数注意事项纯虚函数注意事项虚函数表指针和虚函数表Derive继承base多重继承注意事项带有虚函数的类的sizeof问题虚继承 多态性 多态是指通过基类的指针既可以访问基类的成员,也可以访问派生类的成员。 实现条件 必须存在继承关系; 继承关系中必须有同名的虚函数,并且它们是覆盖关系(函数原型相同)。 存在基类的指针,通过该指针调用虚函数。 虚函数 #include <iostream> using namespace std; //基类People class P
2022-03-01 16:09:00
101
原创 算法——回溯法
回溯法基本概念排列数子集树基本概念算法实例装载问题符号三角形问题复杂度分析实现最大团问题图的m着色问题旅行售货员问题 基本概念 排列数 当所给的问题是确定n个元素满足某种性质的排列时,相应的解空间树称为排列树。 遍历排列树需要O(n!)计算时间 void backtrack (int t) { if (t>n) output(x); else for (int i=t;i<=n;i++) { swap(x[t], x[i]); if (le
2020-07-10 21:12:36
286
原创 算法——贪心问题
贪心基本概念基本思想基本要素和设计流程贪心选择性质贪心算法与动态规划算法的区别。最优子结构性质:正确性证明实例活动安排问题问题的分析最优装载问题最优前缀码及哈夫曼算法 基本概念 基本思想 贪心算法总是作出在当前看来最好的选择。贪心算法并不从整体最优考虑,它所作出的选择只是在 某种意义上的局部最优选择。当然,希望贪心算法得到的最终结 果也是整体最优的。虽然贪心算法不能对所有问题都得到整体最 优解,但对许多问题它能产生整体最优解。如单源最短路经问题, 最小生成树问题等。在一些情况下,即使贪心算法不能得到整体 最
2020-07-10 17:37:44
169
原创 算法——动态规划
动态规划基本概念思想基本要素最优子结构重叠性质基本步骤动态规划算法和备忘录法具体例子矩阵连乘问题题目描述:问题分析:抽象描述:算法:例子代码最大字段和问题定义算法分析:实现最长公共子序列问题的定义:问题的分析: 基本概念 思想 动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题 实际应用中,很多问题经分解得到的子问题往往不是互相独立的。不同子问题的数目常常只有多项式量级。在用分治法求解时,有些子问题被重复计算了许多次。 如果能够保存已解决的子问题的答案,而在需要时再找出已求得的答案,就可
2020-07-10 16:45:01
654
原创 C++学习笔记
结构、联合和枚举名可直接作为类型名 const修饰符 定义常量 const float 允许宏定义重新定义,不允许const重替换
2020-05-20 17:08:29
115
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人