按成绩排名次算法及动态演示程序

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

e e- 【洲> 【l】 l f O a 【 s ( a Oj ) / 果 第 i 数 据 大于 后 面 的 第 个 数 据 且第 i 数 据 的 / 如 个 个
∥ 名次 还 没确 定 , 第 i 数 据的 名次 加 1 则 个
i!a l] all+ : f [I ( 2j ) l}】+ j
比较 成熟 的排 序算 法 存 很 多 ,比 如 冒 泡 排 序 、选 择 排 序 、 插 入 排 睁 、快 速排 序 等 .利 片 这峰 排 序 算 法 都能 够 使 一 组 数据 J 序 列 按 照 某个 关键 字 排成 需 要 的顺 序 。但 这些 经 典 的 排 序 算法 在 对数 据 序 列 排 序 时 ,都 要 改 变 数 据 的 原 始 顺 序 。 也 就 是 说 ,

. …
PO 删 RG
圳 BI E. I ' 柏 …………… … …一 …一… ‘ ………… t …一 ……… ………一 …………………“
按成绩排名次算法及动态演示程序
孙 义欣 马凤 娟 安 庆森
摘 要 :实际应 用 中经常 需要 按 照成绩进 行排 名次 ,在排 名 次时 ,很 多情 况下 都要 求确 定数 据 对
改 变 。 例 如 ,通 常 对学 生 按 总 成绩 进 行 排 名 。学 生 名 单 都 是按
, i 数 据 与 其后 的 的数 据 进行 一 一 比 较 / 个 第
{ iaO[< [l1 f [l aO[) ( i l j
/ 果 第 i 数 据 小 于后 面 的 第 i 数 据 且第 i 数 据 的 , 如 个 个 个 ∥ 名次 还 没确 定 , 第 1 数 据的 名 次 加 1 则 个
i !a2 ) al ++ f 【洲 《 l :
照 学 号排 好 顺 序的 ,对学 生 按 成绩 排 名 时 要求 学 生 名 单 的 顺序
不 变 .即仍 然 是按 照学 号 进 行 排列 的 .但 还要 得 到 每 个 学 生对
应 的 名 次 。对 _ 述 具 体 的要 求 ,原 有 的 …些 经 典 排 序 算 法 就不 【 适 _ 了 ,经 过 研 究 .给 了一 个 解 决 该 类 问题 的有 效 的 算 法 , E } J 并利用 C #语言 编程 给 了 一个 演示 程 序 。
输 入 :输 人 数 组 A 【.] [¨ — 】 0. 2 0 n l,其 中 A [】 【一 - ] 0 0n I 中 书需 要 排 序 的数 据 ,A [】 【_ — 】为 排 序 后 各 数据 对应 的 1 0- l n
名次 A 1 『. 一1 2 0. 1中 为名 次 是否 确 定 的标 志 。 n
输 :确 定 了 名次 的 数组 A [.】 【-— 】 O. 0. 1 1 『 1
A l 0 .一 l 1 / 定所 有 数 据 的初 始 名次 为 I l】 . 1_ : / 【 n 假 A[1 .一1- : / 有数 据 对 应 的名 次 都还 没 有 最后 确 定 2[ n lO / 0. 所 f r i _ t 一 ∥ 次 确定 第 i 数 据 的名 次 o + o on 1 依 _ 个
{f r卜一+1 O 一1 o i t n
al n ,使 得 a 1 2 <a l … …<a l 经过 排 序 后 的结 果 序列 l<a l 3 < n。 肯 定 和初 始的输 入序 列 是不 一 样 的 。而 在 实 际应 用 中 ,可 能 只 需 要 对数 据 按 照某 个 关键 字 进 行排 序 , 记下 该关 键 字 对 应 的记 录在 数据 列 f 的位 置或 名 次 .而 不 要 求 原 始数 据 的 顺 序 发生 f 1
应 的 名 次 .但 又 不 要 求 改 变 数 据 的 原 始 顺 序 。 采 用 冒 泡 排 序 的基 本 思 想 , 给 出 了一 个 数 据 次 序 不
变确定名 次的有效算 法 ,并利 用 c #语 言编程对该 算法 的实现进行 了动 态演示。
关 键 词 : 名 次 ;排 序 ; 冒泡 ;Tme 控 件 i r
1 引言
排 序 足 汁 算 机 程 序 没 计 巾 一 项 基本 的 操 作 , 在 实 际 应 用
中 ,有 很 多情 况下 需 要 对数 据 按照 某 种 方 式进 行 排 宇 后 才 能达
数据 A 【】 『 < 【】 [ ,则 当前 的数 据 对 应 的名 次 加 l 0 i A 0 j 】 】 。进
的名 次 ,并进 行 名 次 的设 置 和标 志 的设 置 。 然后 再 对 后 面 的数
到 某 种要 求 .因此 .学 习和 研 究各 种 排 序方 法是 计 算 机 T 作者
的 重 要 课 题 之 。
据做 同样 的处 理 ,共需 要 进 行 n遍 的处 理 ,整个 数 据 序 列 的名 次便 能 够 确定 。 下 面 给 具 体 的算 法 描述 :
行完 一 遍 比较后 ,第 i 数 据 对 应 的名 次就 确 定 了 ,记 录 在 A 个
[】 【 1 I ,然 后将 A [】 Ⅲ 设 置为 1 1中 2 ,表 示 该 数 据 的名 次 已
经确 定 ,然 后 再进 行 一 遍 扫 描 , 以确 定 与 A 【】 I 相 等数 据 0 i I
在 一 般 情 况 下 ,排 序 问题 的输 入是 n个 数 a ,a l 2,a 3, …… , al 一 个序 列 ,排 序 是 按 照 某 个 关 键 字 对初 始 序 列 重 新 排 序 , l的 ・ 产 生 初 始 输 入序 列 一 个 重 新 排 列 :a 1 a . a l, … … , l , 21 3
2 按 学 生成 绩 排 名 次 的算 法
似 没 要处 理 的 数 据 存 放 在 A 数 组 中 , 为 了算 法 实 现 的 需 iபைடு நூலகம்!a2 ) , 果 第 i 数据 的 名次 还 未确 定 f 【川 / l 如 个 { a2 = : / I洲 1 / 确定 第 i 数 据 的名 次 个 f r k -+ t 一 / o + i 1 on 1/ 查找 与 第 i 个数 据 相 同 的数 据 _ 【】 】 = 【} ) f O【 . a n ( k a 0 1 , 果 第 k个 数 据 与第 i 数 据相 同 / 如 个 ( a1【 a1n / 名 次 与第 ; 数 据相 同 [ k 【l : / 】 】 则 个 a2 [ = : [l ] l k
相关文档
最新文档