上一页 1 2 3 4 5 6 7 8 ··· 10 下一页
摘要: 更多内容见http://www.cnblogs.com/mu-ye/p/7754368.html 以下介绍在定义有继承关系的类时可能用到的基本性质: 定义基类 基类通常都应该定义个虚析构函数,即使该函数不执行任何操作也是如此。 成员函数与继承: C++语言中,基类必须将它的两种成员函数分离开来:一种 阅读全文
posted @ 2017-10-30 21:05 哲贤 阅读(5682) 评论(0) 推荐(0) 编辑
摘要: 类的基础知识见 概述: 面向对象程序设计的核心思想是数据抽象、继承和动态绑定。 1、使用数据抽象,可以将类的接口和实现分离。 2、使用继承可以定义相似的类型并对其相似关系建模。 3、使用动态绑定,可以在一定程度上忽略相似类型的区别,而以统一的方式使用它们的对象。 继承 通过继承联系在一起的类构成一种 阅读全文
posted @ 2017-10-30 14:34 哲贤 阅读(928) 评论(0) 推荐(0) 编辑
摘要: 题意:有n个矩阵,每个矩阵可以用两个整数a、b描述,表示它的长和宽。矩阵X(a,b)可以嵌套在矩形Y(c,d)中,当且仅当a<c,b<d,或者b<c,a<d。输出最多嵌套的矩阵个数。 思路:如果矩阵X可以被Y嵌套,则相当于X到Y有一条路径,问题就转化成了在有向无环图中找最长路的问题。 这个问题是动态 阅读全文
posted @ 2017-10-26 22:49 哲贤 阅读(1353) 评论(0) 推荐(0) 编辑
摘要: 动态规划的核心是状态和状态转移方程。 计算状态转移方程的方法: 1、递归计算。 用直接递归的方法计算状态转移方程,效率往往十分低下。其原因是相同的子问题被重复计算了多次。 2、递推计算。 递推的关键是边界和计算顺序。 3、记忆化搜索。 不必事先确定各状态的计算顺序,但需要记录每个状态“是否已经计算过 阅读全文
posted @ 2017-10-26 21:59 哲贤 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 以前以为贪心问题都是证明的才可以用,后来发现,一些问题可以用贪心的想法切入,然后思考过后发现可以用贪心方法解决问题,因为证明不麻烦,简单想想就明白了。 一、背包相关问题 1、给出n个物体,第i个物品的重量为wi,选择尽量多的物体,使得总重量不超过C。 把物体按重量从小到大排列,依次选择每个物体,直到 阅读全文
posted @ 2017-10-23 21:44 哲贤 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 原创、转载请注明出处 之前的图都是显式的,路径寻找还可以用于隐式图。 隐式图的一个结点往往表现为一个状态,路径寻找就是寻找从一个状态走到另一个状态的路径。 八数码问题: 3*3的矩阵中,8个格子中有数字,1个格子是空的,只允许空格子的相邻格子中的数字移动到空格子中这一种行为,给定初始状态和最终状态, 阅读全文
posted @ 2017-10-22 19:56 哲贤 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 递归函数不再调用它本身,而是返回上一层调用,这种现象称为回溯。 表现在解答树中就是一个结点本来应该有的分支因为不满足条件而没有接续产生分支。 八皇后问题:在8*8的棋盘上,放置8个皇后,使其不互相攻击,皇后的攻击范围为同行同列和同对角线,找出所有解。 思考可知:每一行只能放一个,每一列也只能放一个。 阅读全文
posted @ 2017-10-22 09:51 哲贤 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 原创、转载请注明出处。 快速排序优点: 速度快,不需要辅助空间。 分治: 划分问题:把数组的各个元素重排后分成左右2部分,使得左边任意元素都小于或等于右边任意元素。 递归求解:把左右2部分分别排序。 合并问题:不用合并,因为此时数组已经完全有序。 “划分过程”有多个版本,我第一次用的把第一个数作为基 阅读全文
posted @ 2017-10-21 19:33 哲贤 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 原创、转载请注明出处 分治: 划分问题 递归求解 合并问题 20 6 1 5 4 8 3 9 12 51 11 15 14 13 25 69 47 56 74 26 78 note: 1、T临时数组 2、合并2个序列时,注意一个为空的情况 3、好的分类可简化代码的书写,比如这里的pos2 >= y 阅读全文
posted @ 2017-10-16 15:51 哲贤 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 原创、转载请注明出处 给出一个长度为n的序列,求最大连续和 1、n3 2、n2记录、递推思想 3、nlogn 分治算法一般分为以下3个步骤: 划分问题:把问题的实例划分成子问题。 递归求解:递归解决子问题。 合并问题:合并子问题的解得到原问题的解。 最大连续和的分治算法: 1、把序列分成元素个数尽量 阅读全文
posted @ 2017-10-16 08:41 哲贤 阅读(242) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页