搜索
查看: 1393|回复: 1
打印 上一主题 下一主题

易语言版 快速排序 --照抄

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-26 18:10:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 APPLEUFO 于 2014-10-26 18:25 编辑

因为写的简单,直接就翻译过去了
不过也就只有前面逍遥,后面写的太深奥,图转数据类型看不懂,不过还好用不到~~

[mw_shl_code=c,true].版本 2

.子程序 子程序_翻译快速排序
.参数 参数_数组, 整数型, 数组
.参数 参数_左边, 整数型
.参数 参数_右边, 整数型

递归_开始 (参数_数组, 1, 取数组成员数 (参数_数组))

.子程序 递归_开始
.参数 参数_数组, 整数型, 数组
.参数 参数_左边, 整数型
.参数 参数_右边, 整数型
.局部变量 局变_x, 整数型
.局部变量 局变_y, 整数型
.局部变量 局变_基准数, 整数型

.如果真 (参数_左边 > 参数_右边)
    返回 ()
.如果真结束

局变_基准数 = 参数_数组 [参数_左边]
局变_x = 参数_左边
局变_y = 参数_右边

.判断循环首 (局变_x ≠ 局变_y)

    .判断循环首 (参数_数组 [局变_y] ≥ 局变_基准数 且 局变_x < 局变_y)  ' 比6小,就是数大于6就循环
        局变_y = 局变_y - 1
    .判断循环尾 ()

    .判断循环首 (参数_数组 [局变_x] ≤ 局变_基准数 且 局变_x < 局变_y)
        局变_x = 局变_x + 1
    .判断循环尾 ()

    .如果真 (局变_x < 局变_y)
        数组模块_交换变量 (参数_数组 [局变_x], 参数_数组 [局变_y])
    .如果真结束

.判断循环尾 ()

参数_数组 [参数_左边] = 参数_数组 [局变_x]
参数_数组 [局变_x] = 局变_基准数


递归_开始 (参数_数组, 参数_左边, 局变_x - 1)
递归_开始 (参数_数组, 局变_x + 1, 参数_右边)
[/mw_shl_code]
沙发
发表于 2014-10-27 21:57:55 | 只看该作者
。。感觉易语言写的还没C看起来顺眼呢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表