计算机体系结构与算法分析毕业设计说明书,毕业设计(8)
简单选择排序的思路很简单,将最小的元素找出并放在序列的最前面,在剩下的元素中继续找出最小的元素放在第二个位置上,以此类推,即可确定其在最终序列中的最终位置。例如:
public void SelectSort(int[] A, int length){
int min;
for(int i=0;i 21 min=i;//记录的最小元素的位置 for(int j=i+1;j if(A[j] min=j;//更新最小元素位置 if(min!=i) Swap(A[i],A[min]);//与第i个位置交换 中南林业科技大学本科毕业设计 软件体系结构与基础算法分析 整个排序过程共需要选择n-1次,第i趟选择最小元素所需要的比较次数为n-i次,与数组的初始排列无关,因此总共的比较次数是n(n-1)/2 4 应用软件设计 算法与体系结构的结合运用体现在很多方面,比如有些软件体系结构模型就是以某种算法为基础建立的。而在该处讨论的是在某种软件体系结构的基础上使用基础算法完成某些功能或者提高软件执行效率的方面。因此,在软件设计之初考虑到要用一些基础算法来完善系统的结构和效率,所以采用基于MVC软件界面的体系结构来构建一个简单的仓库系统,从而分析和得到软件体系结构与基础算法之间的联系和用途。 4.1 功能设计 可能有些人会弄不懂MVC体系结构风格与三层系统风格有何区别,因此在软件设计之初,就两者进行了一些简单的的比较。 同样是架构级别的,它们有什么相同点和不同点呢? 其实它们相同的地方在于他们都有一个表现层。所以他们主要不同的地方在于其他的两个层。 22 中南林业科技大学本科毕业设计 软件体系结构与基础算法分析 首先先解释一下MVC。V即View.是视图的意思。C即Controller,是控制器的意思。而M即Model,是模型的意思。这三个里.最不容易理解的应该是Model.就是什么是Model,而为什么叫Model。 先不说为什么叫Model,先解释Controller。Controller是控制器的意思,所谓控制器,就是将用户请求转发给模型层,经过处理后把结果返回到界面展现的一个中间层。 再来说说M,即Model,在Java Web里说的是Java Bean,我认识的很多人都把Java Bean误认为是实体类,其实Java Bean有比实体类更丰富的定义,在Java Bean中除了其属性和字段,还可以有行为及其事件,Java Bean可以理解为普通Java对象。Java普通对象,就是符合Java规范的所有对象,这和实体类完全是两回事。所以,我认为在MVC中。业务逻辑和数据访问应该放在Model层,也就是V负责展示数据,Controller除了转发不做业务逻辑。真正的逻辑事务,数据访问,甚至算法都放到Model去。 再说三层架构。三层其实很好理解,界面,业务,数据访问,就这三个,从字面都可以理解出它们的意思。我要说的是它和MVC的区别。在三层架构中没有定义Controller的概念。这是我认为最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。 当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是已实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。不一样的概念。虽然名字一样。 所以,这里采用的是基于MVC结构风格的架构来设计软件的架构,在完善软件时,将一些需要用到的算法和函数放在Model层,用以完善系统和优化整个软件的结构。 因为是一个基于MCV架构的仓库系统,所以整个系统在功能上并不复杂,基本上只是完成了和后期添加的算法相关的功能。由于算法方面没有涉及到数据库数据添加的方面,功能侧重于数据的查找和显示,所以主要就是基于一个MD5加密的注册和登陆的模块,以及一个基于冒泡排序的查找模块。 4.2 数据库设计 该系统的数据库比较简单,包含四个简单的表: 23 中南林业科技大学本科毕业设计 软件体系结构与基础算法分析 表中的详细关系如下说明。 管理员表中包含了: 管理员号,管理员名,密码,性别,管理员电话,邮箱以及地址。 商品表中包含了: 商品号,商品名,商品产商,商品零售商,商品数量,对应的仓库号。 仓库表中包好了: 仓库号,仓库名,仓库总容量,仓库当前容量,仓库状态。 订单表中包含了: 订单号,商品号,管理员号,商品数,订单日期。 每一种商品只对应一个仓库,一个仓库中能共存储多种商品。一张订单只对应一个管理员和一种商品,而一个管理员可以对应多张订单,一种商品也能对应多张订单,其数据库物理模型如图4-1所示。 图4-1 数据库物理模型 4.3 主要分析功能 1.注册功能 注册时密码存入数据库时有一个简单的加密算法,相应的取出时有一个对应的解密算法。用来在一定的程度上保障管理员的账号安全。 /** * 加密算法 24
相关推荐:
- [基础教育]2016-2022年中国钢芯铝绞线市场现状调
- [基础教育]语文部编版初一语文下册练习题 句式变
- [基础教育]南京继续教育参考答案--深入学习贯彻习
- [基础教育]国旗下讲话稿——珍惜时间好读书
- [基础教育]北师大版六年级数学下册圆锥的体积教学
- [基础教育]人教版-音乐-四年级下册-四年级下册音
- [基础教育]乔布斯2019年斯坦福大学毕业典礼致辞.d
- [基础教育]2015年加油站安全知识竞赛试题及答案
- [基础教育]2020年教师年度考核个人工作总结
- [基础教育]2019年中考历史试题-2019年大庆市初中
- [基础教育]初三仁爱英语第一轮总复习教案
- [基础教育]SG-A094电气配管安装工程隐蔽验收记录
- [基础教育]冀教版小学数学三年级下册第六单元教材
- [基础教育]青岛版(五制)小学科学二年级下册16《制
- [基础教育]2018-2019年初中科学初一中考真卷测试
- [基础教育]幼儿园大班期末简短评语精选
- [基础教育]2018云南临沧公务员考试申论技巧:这样
- [基础教育]学校食堂经营管理方案
- [基础教育]新中国砥砺奋进的七十年原文
- [基础教育]真空泵的选型及常用计算公式
- 高职田径课程教学现状与对策
- 全髋关节置换术在老年股骨颈骨折患者中
- 青人社厅函〔2016〕576号(附件)工资
- cp101-07砂子检验作业指导书 - secret
- 微观经济学 第八章 博弈论 习题
- 2014高考真题(词语运用)汇编及答案
- 2018年人教版七年级语文下册《第三单元
- 苏教版数学四年级上册第一单元试题 - M
- 四川大学新闻与传播考研2000-2010年真
- 浙江万里学院英语专业四年制本科教学计
- 最新2018马年事业祝福语-范文word版(2
- 最全模具行业术语英文翻译
- 皮亚杰的发展心理学理论
- 64篇高考情景式默写 练习题及答案
- 仿写(学生稿)
- 《SQL Server数据库技术》试卷A
- 第七章作业答案
- 江苏省赣榆县海头高级中学高中语文必修
- 浙江省2001年10月自考正常人体解剖学答
- 2012英语重点短语




