摘要:
组员:蔡容玉 张丹丹题目:求数组的所有子数组的和的最大值(二维)思路:首先我们考虑的是最直接最简单的穷举法,然后又考虑了老师提出的找最大正数(优先)或最小负数(排除)方法,但是考虑到这个方法可能出错,于是我们便参考资料,想到了另一种方法:枚举法 把二维的问题化成一维的问题,首先我们知道某子矩阵的上,下边界分别是a行和b行,接下来我们应该要确定左右边界;把a行和b行之间的每一列看作是一个整体,定义为:DC[1],DC[2],DC[3],……DC[M],把他们看作一个元素并求出最大值;这样就把二维问题转化为一维问题。另外,二维情况下我们定义部分和:PS[i][j] 等于以(1,1)、(i,1)、( 阅读全文
摘要:
组员:蔡容玉张丹丹1、背景假设:该大楼有21层,从地面0,1,...20。地板0是地下停车场水平,1楼是大堂的水平。大多数人都在/走出大楼通过这些2层。2、结对开发要求2.1、每一对学生将设计一套接口和类定义这样一种算法提供者可以提供他/她实现“电梯调度程序”类。2.2避免出现“公共汽车”最坏情况的算法。该算法把电梯作为总线,它从底部到顶部,停在每一层楼,打开门,让人们进出,然后把门关上,继续前进。之后到达顶层,它会下去。该算法能够满足所有的要求,但它显然不是最快的算法。2.3代码要求:它具有生成0(零)的代码分析警告和错误。它必须是正确的。它要快。一,概念设计1.用户界面设计窗口方式:策 阅读全文
摘要:
关于敏捷软件开发一,基本软件开发过程1, 瀑布软件开发2, 迭代软件开发3, 原型软件开发4, 极限编程(xp)二,敏捷软件开发基本概念和特性 敏捷软件开发,是一种应对快速变化的需求的一种软件开发能力,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重作为软件开发中人的作用。敏捷软件开发的价值观:(1) 人和交互重于过程和工具(2) 可以工作的软件重于求全责备的文档(3) 客户协作重于合同谈判(4) 随时应对变化重于循规蹈钜敏捷软件开发的基本原则:(1) 对我们 阅读全文