
C与C++算法历程
主写算法
雨夜※繁华
用最强大的行动力诠释一个完美的自己,期望未来成为自己眼中的大神。改变命运!
展开
-
算法学习(七)回溯算法
文章目录回溯算法浅学1、回溯算法的思想1.1 概念1.2 对比穷举法(解空间不同、通过剪枝回溯实现)1.3 解空间和其他一些概念1.4 剪枝函数(当某个顶点没有希望则其所在树枝可以减去)1.5 回溯算法设计步骤2、实战例子2.1、货物装载问题(子集树)2.2、0-1背包问题(子集树)2.3 八皇后问题2.4、 地图中的点m-着色问题(回溯图)回溯算法浅学1、回溯算法的思想1.1 概念回溯法(back tracking)(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但原创 2020-07-26 18:47:37 · 633 阅读 · 0 评论 -
算法学习(五)图算法学习总结
文章目录图算法1、图的表示2、图的遍历2.1、BFS(宽度优先搜索、优先队列)2.2、DFS(深度优先搜索、递归算法)3、寻找最小生成树3.1、Prim算法3.2、 Kruskal算法4、最短路径问题4.1、单源最短路径问题4.2、所有点对最短路径问题图算法1、图的表示2、图的遍历2.1、BFS(宽度优先搜索、优先队列)对边搜索、不断延展。2.2、DFS(深度优先搜索、递归算法)递归调用顶点3、寻找最小生成树3.1、Prim算法3.2、 Kruskal算法4、最短路原创 2020-07-22 22:32:00 · 1858 阅读 · 0 评论 -
平衡二叉树及其算法实现
文章目录1、平衡二叉树1.1、什么是二叉搜索树1.2、二叉搜索树的缺点1.3、平衡二叉树的提出1.4、如何构建平衡二叉树(ALV树)1.5 失衡情况及其处理(4种)1.5.1 LL——(右旋)1.5.2 RR——(左旋)1.5.3 LR——>(先左旋再右旋)1.5.4 RL——>(先右旋再左旋)1.5.5 总结代码实现1.5.6 小结1.5.7 删除结点后该如何调整平衡二叉树?1、平衡二叉树1.1、什么是二叉搜索树1.2、二叉搜索树的缺点二叉树查找算法查找时间依赖于树的拓扑结构。查找效原创 2020-07-04 17:36:18 · 5277 阅读 · 6 评论 -
day6 6.2各类运算符的重载
目录数学运算符的重载重载“<<”和“>>”重载“[]”重载“++、- -”重载new和delete重载()小结注意事项数学运算符的重载四则运算符(+、-、、/、+=、-=、=、/=)和关系运算符(>、<、<=、>=、==、!=)都是数学运算符,它们在实际开发中非常常见,被重载的几率也很高,并且有着相似的重载格式。代码如下://各类运算符的重载!...原创 2020-03-26 21:44:04 · 322 阅读 · 0 评论 -
以成员函数还是全局函数(友元函数)的形式重载运算符?
例子//全局friend Complex operator+(const Complex &c1, const Complex &c2);//成员,记得加=号,“+=”Complex & operator+=(const Complex &c);对于全局函数形式的重载“+”先来看b = a + 1.1;,实际上会被转换为b = operator+(...原创 2020-03-26 20:09:33 · 3653 阅读 · 5 评论 -
day6 6.1运算符重载及重载规则
目录运算符重载含义在全局范围重载运算符(使用友元)重载运算符的规则运算符重载含义所谓重载,就是赋予新的含义。函数重载(Function Overloading)可以让一个函数名有多种功能,在不同情况下进行不同的操作。运算符重载(Operator Overloading)也是一个道理,同一个运算符可以有不同的功能。实际上,我们已经在不知不觉中使用了运算符重载。例如,+号可以对不同类型(int、...原创 2020-03-26 19:43:27 · 298 阅读 · 0 评论 -
关于c语言的scanf用来读取字符的一些总结
关于c语言的scanf用来读取字符的一些总结scanf() 是带有缓冲区的。遇到 scanf() 函数,程序会先检查缓冲区中是否已经有数据如果没有,就等待用户输入。用户从键盘输入的每个字符都会暂时保存到缓冲区,直到按下回车键,输入结束,scanf() 再从缓冲区中读取数据,赋值给变量。如果有数据,哪怕是一个字符,scanf() 也会直接读取,不会等待用户输入。注意:scanf() 匹配到...原创 2020-03-21 18:41:26 · 22291 阅读 · 6 评论