摘要: 1. 线性搜索 简单线性查找伪代码: 含有标记的线性查找 2. 二分搜索 要求数据集合先进行排序。 伪代码: 3. 散列法 散列法可根据各元素的值来确定元素的存储位置,再将位置保管在散列表中,从而实现高速搜索。其由容纳m个元素的数组T, 以及根据数据关键字决定数组下标的函数共同组成。 简单实现: 散 阅读全文
posted @ 2017-07-30 20:22 zmlgo 阅读(152) 评论(0) 推荐(0) 编辑
摘要: C++标准库以提供“模板”为主,即不必预先指定类型的函数或类。 STL提供了多种名为容器的类,用于管理数据集合。如stack、queue、vector、list等。 stack<int> S; queue<string> Q; queue<pair<string, int> > Qp; vector 阅读全文
posted @ 2017-07-30 20:11 zmlgo 阅读(377) 评论(0) 推荐(0) 编辑
摘要: 数据结构顾名思义就是一堆数据的组织方式,以方便后续的存取和操作,且好的算法离不开高效管理数据的方法。 数据结构的三要素: 1. 数据集合。通过数据对象的本体(如数组和结构体)保存数据 2. 操作。对数据集合的操作,如插入、存取、查找、以及修改等 3. 规则。保证数据集合按照一定规矩来操作、管理和存取 阅读全文
posted @ 2017-07-30 18:00 zmlgo 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 1. 插入排序 思想: 其思路与打扑克时排列手牌的方法类似,即需要将牌一张张抽出来,分别插入到前面已排序好的手牌中的适当位置。 算法伪代码: 2. 冒泡排序 思想:让数组元素逐个地像水中气泡一样上浮。 伪代码1: 伪代码2: 3. 选择排序 思想:在每个计算步骤中选出一个最小值,进而完成排序。 伪代 阅读全文
posted @ 2017-07-30 16:33 zmlgo 阅读(226) 评论(0) 推荐(0) 编辑