- 博客(10)
- 收藏
- 关注
原创 系统分析与设计作业(九)
XX 建模练习 要求:练习文档编写选择一个你喜欢的 移动App 或 其中某业务参考 Asg_RH 文档格式 编写软件描述文档要包含一个业务的完整过程建模要求包括(用例图、XX业务或用例的活动图、XX领域模型、XX对象的状态图、XX场景的系统顺序图与操作协议)建模者答案:收集建模者答案URL建模者不能是本团队成员(至少有一个答案)给建模者给出评价与建议用例图活动图领域模型状态图系统顺序图...
2018-05-20 23:01:32
230
原创 系统分析与设计作业(一)
一.简单题1.软件工程的定义答:(1)将系统化,规范化,可度量的方法应用于软件的开发,运行和维护的过程,即将工程化应用于软件中。 (2)对(1)中所述方法的研究。2.software crisis 和 COCOMO模型的解释答: 六十年代以来,随着计算机应用需求的驱动,系统软译系统和件和应用软件有很大的发展,如操作系统,编译系统和大型应用软件等。由于软件生产的复杂性和高成本,使大型软件的...
2018-05-20 20:46:35
340
原创 系统分析与设计作业(三)
本次作业是写技术博客,初次接触node.js后端,就写一个node.js环境配置吧。我采用.msi方式安装。在安装过程中直接都点next,最后检测PATH环境变量是否配置了Node.js,点击开始=》运行=》输入"cmd" => 输入命令"path",输出结果我们可以看到环境变量中已经包含了C:\Program Files\nodejs\检查node.js版本:...
2018-04-15 22:39:33
184
原创 系统分析与设计作业(二)
简答题1.简述瀑布模型、增量模型、螺旋模型(含原型方法)的优缺点。瀑布模型 优点: 为项目提供了按阶段划分的检查点;前一阶段完成后,只需关注后续阶段;提供了一个模板,这个模板使得分析、设计、编码、测试和支持的方法可以在该模板下有一个共同的指导。 缺点: 各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量;由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开...
2018-03-22 11:37:56
258
原创 DFS
首先给出有向无环图DFS的伪代码:Leetcode 329. Longest Increasing Path in a Matrix代码如下:class Solution {public: int longestIncreasingPath(vector >& matrix) { int row = matrix.size();
2018-01-20 22:45:55
213
原创 Greedy Algorithm
贪心算法的定义:经典问题:课程安排Leetcode 630伪代码:代码实现:class Solution {public: int scheduleCourse(vector>& courses) { sort(courses.begin(), courses.end(), [](vector a, vector b){
2018-01-20 22:29:37
467
原创 Dynamic Programming(3)
Leetcode 91.Decode Ways代码展示class Solution {public: int numDecodings(string s) { int n = s.size(); if(n == 0 || s[0] == '0') return 0; if(n == 1) return 1; int res = 0,fn_1
2018-01-20 22:19:03
188
原创 Dynamic Programming(2)
Leetcode 72.Edit Distance编辑距离问题是一个经典问题。具体的解决方法如下:题目代码如下:class Solution {public: int minDistance(string word1, string word2) { const int m = word2.size(); const int n
2018-01-20 20:49:38
147
原创 Dynamic Programming(1)
概念介绍 动态规划解决问题的方法就是通过解决很多的小问题而解决大问题。而与分治法的区别在于分治法划分出的小问题常常是不包含公共子问题的,动态规划则是小问题之间有着公共子问题。 动态规划的效率将取决于两个因素,子问题的数量与子问题的解决效率。实际上,动态规划的时间效率就是子问题的数量*子问题的时间效率。实例分析接下来将用一些实例分析DP的方法leetcode.62 Unique Paths从一个
2017-12-28 14:13:38
216
原创 Divide and Conquer
1. 概念介绍与准备知识 最常见的分治法应用有快速排序(选择pivot),堆排序等。以堆排序为例,说明三个步骤:将排序分解为对两个大小大致相同的数组排序递归求解子问题,直至(n=1)用merge函数将两个已经排序的数组合并接下来要讲一个重要的分治法复杂度分析定理,大师定理: 2.实例分析 用分治思想分析,分解为两步(没有第三步合并):以一个数v(随机选定)将数组分为三部分,
2017-09-25 22:51:07
333
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人