动态规划的核心是状态和状态转移方程。01背包问题是最基本的背包问题,它包含了背包问题中状态、方程的最基本思想,另外,别的类型的背包问题往往也可以转换成01背包问题求解。...
分类:
其他好文 时间:
2014-05-14 00:40:03
阅读次数:
276
http://blog.163.com/jackie_howe/blog/static/199491347201231691525484/set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每个子树根节点键值大于左子树所有节点的键...
分类:
编程语言 时间:
2014-05-13 21:45:21
阅读次数:
333
简单总结下,我们从C++的内置数组讲到标准库提供的vector,
最后谈到C++11新增的array, 数组这个最基本的数据结构在C++中终于有了完整的支持。
分类:
其他好文 时间:
2014-05-13 18:04:29
阅读次数:
263
由上一章的内容可知软件质量的重要特征之一就是能够高效的利用资源(运行效率),因此我们就要考虑如何创建出能够高效利用CPU及内存的数据结构与算法。而算法分析的目的就是为了让我们能够认识到算法对于资源的利用效率。我们要想分析算法的效率,就需要找到一个评价算法效率的标准及方法。一般我们如果能快速的利用CP...
分类:
其他好文 时间:
2014-05-13 17:37:47
阅读次数:
231
用 栈 stack 来处理.
直接根据题目描述写就可以。不要忘记每组数据最后的清空栈堆。
题目大意: 给定52张的扑克牌,现在要求对扑克牌进行整理,对于每一张扑克牌,如果左边的第三张存在那么就去判断这一张是否和第三张满足花色或卡片值相同,如果满足则把这一张移动到左边的第三张,否则去判断左边的第一张是否和这一张满足条件;如果左边的第三张不存在那么只要去判断左边的第一张即可。最后输出剩下的扑克牌的...
分类:
其他好文 时间:
2014-05-13 14:01:26
阅读次数:
265
前面分别介绍了邻接表有向图的C和C++实现,本文通过Java实现邻接表有向图。目录 1.
邻接表有向图的介绍 2. 邻接表有向图的代码说明 3. 邻接表有向图的完整源码
转载请注明出处:http://www.cnblogs.com/skywang12345/更多内容:数据结构与算法系列 目录 邻接....
分类:
编程语言 时间:
2014-05-13 10:59:52
阅读次数:
368
分析树
树的结构完成以后,该是时候看看它能做点什么实事儿了。这一节里,我们研究一下分析树。分析树能够用于真实世界的结构表示,象语法或数学表达式一类的。
图1
一个简单语句的分析树
图1所示是一个简单语句的层级结构,把语句表示为树结构可以让我们用子树来分析句子的组成部分。
图2 ((7+3)?(5?2))的分析树
我们也可以把数学表达式如((7+3...
分类:
编程语言 时间:
2014-05-13 06:14:20
阅读次数:
691
如果一个多层次的数据结构达到两级或者两级以上,举例如下:
struct A{
int array_member[100];
//其他数据成员
};
struct B{
struct A *a_ptr;
//其他数据成员
}
那么通过B类型的指针b_ptr访问A类型的array_member的某一个元素array_member[0]则需要使用b_...
分类:
编程语言 时间:
2014-05-13 06:00:59
阅读次数:
270
本段程序主要利用数据结构栈的先进后出特点,实现回溯求解迷宫路径问题。
#include
#include
using namespace std;
//坐标类
struct Point
{
int x;
int y;
};
//地图类
template
struct Map
{
int (*p)[A];
int row;//行数
int col;//列数
};
//start起始点, ...
分类:
其他好文 时间:
2014-05-13 05:25:02
阅读次数:
478
swim() 表示上浮:作者将其比喻为黑帮新人(插入的新元素),能力高(值大的)的被提升,将能力不够的前辈踩在脚下,直到遇到一个更强的领导。sink ()表示下沉:比喻为黑帮领导,能力不行的或退休的(删除)就被下属取代。每次帮派有新人加入,或有领到退休,帮内都必须重新论资排辈。这个比喻还是挺有意思的。...
分类:
其他好文 时间:
2014-05-12 23:37:49
阅读次数:
379