网络选课系统中常用算法分析.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络选课系统中常用算法分析

网络选课系统中常用算法分析 李舒亮1 刘有珠2 The analysis of typical algorithms of Network curricula-variable system LI SHUNAG-LIANG1 LI YOU-ZHU2 新余高等专科学校 计算机系 江西 新余 338000 南昌工程学院 信息工程系 江西 南昌 330047 摘要:阐述了网络选课算法的基本原则,对常用的几种网络选课算法从选课结果的公平性、选课过程的安全性、算法设计的复杂度等多方面进行了分析和比较。 关键词:网络选课 算法 选课结果 公平性 安全性 复杂度 Abstract: This paper mostly tell about the principle of algorithm for Network curricula-variable system, especially to compare and analyse several typical algorithms in some aspects, mainly about Equality of results , Security of procedure, Complexity of algorithm designing and so on. Key Words: Network curricula-variable system Algorithm Equality Security complexity 网络选课相对手工选课有很大的优越性,比如操作简单,方便快捷,工作效率高等。但不同学校的对选课的要求不同,学分制选课和选修课选课的要求也不一样,而设计一套合理的选课算法,保证选课的公平性、合理性,系统运行的高效性是很有必要的。 1 选课算法的基本原则 在网络选课过程中,由于师资、时间、教室资源的限制,所以学生的选课要求不可能全部满足。而学生选课往往又有很大的倾向性,结果可能会出现有些课程“爆满”,超出现有的开课能力;而有些课程选课人数却“寥寥无几”,以至于低于开课人数下限。因此应该要设计一套合理、公平的选课算法,来满足教学管理的需求。一个运行效率高、选课结果公平合理的算法应满足以下基本条件: 能按照教学计划,顺利地完成选课工作。 系统性能稳定、安全性好,运行速度快,效率高。 管理人员操作方便、简单。数据的整理、备份,信息的发布都能方便的完成。 尽可能满足学生选课的愿望,每个学生都有均等的选课机会。 算法设计不要过于复杂,以免实现起来困难,系统开销过大。 2 网络选课中常用的算法及分析 基于以上基本原则,我们对常用的选课算法从内容、结果、复杂度和安全性等方面进行分析。常用的网络选课算法有哪些呢?一般归纳为以下几种: (1) 先来先服务算法 所谓先来先服务算法类似与购票系统,谁先来谁先购到票,票售完为止。先登陆选课系统就有优先进行选课的权力,选课结果直接写入选课结果表。某门课达到限选人数,则该门课自动停止选课。 该算法设计的选课系统选课结果与选课的时间有关,谁先登陆系统就有最可能选到自己满意的课程。因此选课结果是不公平。 从安全性方面来说,该算法可能造成网络访问高峰问题。因为每个学校开设的热门课程并不多,学生为了选到自己喜欢的课程,喜爱的老师,会在开放选课系统之初就哄涌上网选课,引发突发高峰访问量的问题。给系统负载带来很大的压力,造成服务质量下降,严重时可能造成系统崩溃。 该算法的原理简单,系统实现也容易。系统运行的性能除与硬件配置有关外,还与选课人数和课程数有关,在选课人数多,课程数目有限的情况下,可能引发高峰访问,对系统安全性运行造成隐患。如果选课人数少,课程数目多,硬件配置好,系统能平稳运行。 以上分析可以看出先来先服务的选课算法对系统的性能要求比较高,可能引发高峰访问,并且选课结果不公平。 (2) 专业优先算法 该算法把选课分为预选和筛选两个阶段。在预选阶段不限定选课人数,学生可以任意选择。预选结束后,对选课结果进行分析,若该门课的选课人数没有超出该课程的限定人数,则全部选中,并把结果写入正式的选课结果表。若超出了设定的限选人数,则进行筛选。筛选原则是:本专业的同学优先级高于外专业的同学,高级的学生优先级高于低年级的学生。而专业和年级的信息在学生的学号在都有体现。具体流程如图1所示。 图1 专业优先算法 从以上流程可以看出,学生选课的结果与选课时间无关,与所学专业有关。学生对与所学专业相同或相近的课程具有优先权。 该算法复杂度与课程数、专业数目有关。课程数越多,专业数目越多,算法设计越复杂。例如,有一门公选课程《

您可能关注的文档

文档评论(0)

wujianz + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档