摘要: 由于背单词软件中需实现测试单词与答案选项的随机排列和带权值的概率抽取,程序中实现了以下三个算法:1.等概率随机排列数组(洗牌算法)假设有一个数组,包含n个元素。现在要重新排列这些元素,要求每个元素被放到任何一个位置的概率都相等(即1/n),并且直接在数组上重排(in place),不要生成新的数组。用 O(n) 时间、O(1) 辅助空间。算法是非常简单了,当然在给出算法的同时,我们也要证明概率满足题目要求。先想想如果可以开辟另外一块长度为n的辅助空间时该怎么处理,显然只要对n个元素做n次(不放回的)随机抽取就可以了。先从n个元素中任选一个,放入新空间的第一个位置,然后再从剩下的n-1个元素中任 阅读全文
posted @ 2012-11-13 21:12 SuperBrothersTeam 阅读(3102) 评论(3) 推荐(0) 编辑
摘要: 由于我们组的项目已经进行到了中期,项目测试开始陆续进行了,作为一款应用软件,单元测试就显得尤为重要,以下是关于单元测试学习的一些笔记:一、单元测试的基本概念 单元测试是对软件的基本组成单元/模块进行的测试。基本单元/模块可以是函数、类实例、方法、存储过程,也可以是任何具有明确功能、规格定义、明确接口定义、并且其规模是一般比较小的程序代码模块的组合体。单元测试的重点在于发现程序设计或实现的逻辑错误,使问题及早暴露,便于问题的定位解决。二、单元测试的步骤 1、计划:确定测试需求,制订测试策略,确定测试所用资源(如人员、设备等),创建测试任务的时间表。 2、设计:设计单元测试模型,制订测试方案... 阅读全文
posted @ 2012-11-13 15:44 SuperBrothersTeam 阅读(336) 评论(1) 推荐(0) 编辑