动态规划问题满足三大重要性质 最优子结构性质:如果问题的最优解所包含的子问题的解也是最优的,我们就称该问题具有最优子结构性质(即满足最优化原理)。最优子结构性质为动态规划算法解决问题提供了重要线索。 子问题重叠性质:子问题重叠性质是指在用递归算法自顶向下对问题进行求解时,每次产生的子问题并不总是新问
分类:
其他好文 时间:
2016-03-18 01:50:14
阅读次数:
148
书上的一些概念这里不再复述,仅谈谈自己通过阅读教材、上课听讲后自己的一些理解: 面向过程分析方法注重自顶向下,逐层分析,把整个软件系统的功能逐布分解,各个击破。可以用生活中的一个例子来加以理解——去食堂吃饭。到达食堂(比如琴湖食堂)后,要遵从排队——打饭——阿姨打菜——拿筷子——找位子坐好——开吃,
分类:
其他好文 时间:
2016-03-15 23:39:58
阅读次数:
465
单从字面上来讲,面向过程侧重的是“过程”,面向对象侧重的是“对象”。就像是“这件事该怎么做”与“这件事让谁来做”的区别,后者的“谁”就是对象。 面向过程(结构化)分析实质上是一种创建模型的活动,就是面向数据自顶向下逐步求精进行需求分析(教材P59)。其最终目标是得出对程序处理过程的描述。 面向对
分类:
其他好文 时间:
2016-03-14 21:43:46
阅读次数:
177
结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化,限制使用goto语句。 1.自顶向下:程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。 2.逐步求精:对复杂问题,应设计一些子目标作为过
分类:
其他好文 时间:
2016-03-14 00:13:38
阅读次数:
188
Q:软件工作量的估算方法 答: 自顶向下:首先定义整个工作的工作量,然后大化小,再估算小的部分。 自下向上:先分解估算,再整合 帕金森法:计算能够参加该项目的人力 算术模型:利用公式和计算估计 专家判断:请一个对于该领域熟悉的人来进行估计 类比:对照以往的案例估算 http://wenk
分类:
其他好文 时间:
2016-03-12 22:39:13
阅读次数:
169
对于一名程序员来说,“自顶向下”虽然是一种最普通不过的分析问题和解决问题的方式,但其却是简单且较为有效的一种。所以,将其应用到Android的学习中来,不至于将自己的冲动演变为一种盲目和不知所措。 根据“自顶向下”、“从整体到局部”的思想,我的基本学习思路是: 从全局入手,宏观的了解Android平
分类:
移动开发 时间:
2016-03-10 10:49:59
阅读次数:
135
题目来源: https://leetcode.com/problems/binary-tree-level-order-traversal-ii/ 题意分析: 从底向上宽度遍历二叉树。 题目思路: 自顶向下遍历二叉树后将答案翻转。 代码(python): # Definition for a bin
分类:
编程语言 时间:
2016-03-09 15:52:34
阅读次数:
365
在软件设计过程中,前期设计有UML等建模方法,但是软件的详细设计阶段却没有什么特别的工具。PAD(Problem Analysis Diagram)问题分析图是由日本日立公司发明的一种表示程序控制流的结构图。PAD图所描述的程序结构十分清晰,具有图形化结构易读、易懂的特点。支持自顶向下、逐步求精方法...
分类:
其他好文 时间:
2016-03-04 10:32:07
阅读次数:
187
link cut tree入门题 首先说明本人只会写自底向上的数组版(都说了不写指针、不写自顶向下QAQ……) 突然发现link cut tree不难写。。。 说一下各个函数作用: bool isroot(int x):判断x是否为所在重链(splay)的根 void down(int x):下放各
分类:
其他好文 时间:
2016-03-02 21:45:21
阅读次数:
179
1.抽象 抽象是人们认识事物的常用方法,比如地图的绘制。抽象的过程就是如何简化、概括所观察到的现实世界,并为人们所用的过程。 抽象包括两个方面:过程抽象和数据抽象。过程抽象把一个系统按功能划分成若干个子系统,进行"自顶向下逐步求精"的程序设计。数据抽象以数据为中心,把数据类型和施加在该类型对象上的操
分类:
其他好文 时间:
2016-02-24 10:58:55
阅读次数:
126