算法求解中的变量、数组与数据结构(STL 中的容器)
2016-09-10 12:27
274 查看
本质上算法都是对数据的操作,没有数据,没有存储数据的容器和组织方式,算法就是无源之水无本之木,就是巧妇也难为无米之炊。算法是演员,变量、数组、容器等就是舞台,
然后整个算法的处理流程,都是针对这些数据(存储在变量或者 STL 中的容器中)进行初始化,修改,更新的,算法的结束也是对这些数据进行判断;(算法实现过程中的数据,相当于面向对象编程中的成员变量),数据居于中心位置;
城市是否已被访问:
访问过的结点:
可以很方便地获取尾部结点(最新添加的),多少有点像栈(stack),path.back()
一些变量:
然后整个算法的处理流程,都是针对这些数据(存储在变量或者 STL 中的容器中)进行初始化,修改,更新的,算法的结束也是对这些数据进行判断;(算法实现过程中的数据,相当于面向对象编程中的成员变量),数据居于中心位置;
1. 旅行商问题
结点(城市)间的邻接关系与权重 ⇒ 邻接矩阵int dst[100][100];(二维数组,如果没有更复杂的操作,仅仅是存储和访问,使用二维数组即可,无需更为复杂的
vector<vector<int>>)
城市是否已被访问:
bool visited ;/
vector<int>&
访问过的结点:
vector<int> path;
可以很方便地获取尾部结点(最新添加的),多少有点像栈(stack),path.back()
一些变量:
int best;维护全局的唯一标识最终路径的距离,
int curLen;访问到目前的所走过的路程;
相关文章推荐
- STL之vector,数组线性容器array,list容器,算法find,find_if,bind1st,仿函数
- 海量数据处理算法 各种STL容器使用的数据结构剖析
- 数据结构 算法3.4(栈的应用) 表达式求值(stl版and数组模拟版)
- 算法数据结构面试题——标记数组在矩阵特征识别中的应用
- C++ STL标准容器插入删除算法的复杂度
- STL容器 算法 函数表
- STL容器和算法的函数表
- (一)线性数组的数据结构和算法
- STL 平衡树数据结构容器
- 三种算法求解一个数组的子数组最大和
- STL一些常用的容器和算法--总结
- 算法数据结构试题——在数组中找出已知和的组成数
- STL的6大组件:容器、类属算法、迭代器、函数对象、适配器、分配器。
- STL容器(vector,list)--数组和链表的区别
- STL常用容器和算法1
- 面试--stl容器--全局变量存储位置
- 算法与数据结构:C语言的整数数组全排列(源码)
- C++ boost 组件简介:数据结构, 容器, 迭代器和算法
- 类型和变量,弄清楚了,对你的数据结构和算法很有帮助
- STL容器和算法的函数表