网站首页 > 易语言相关 > 易语言例程 正文
.版本 2 .支持库 spec .程序集 窗口程序集_启动窗口 .子程序 __启动窗口_创建完毕 .子程序 quicksort .参数 list, 整数型, 数组 .参数 m, 整数型 .参数 n, 整数型 .局部变量 key, 整数型 .局部变量 i, 整数型 .局部变量 j, 整数型 .局部变量 k, 整数型 .如果真 (m < n) k = choose_pivot (m, n) swap (list [m], list [k]) key = list [m] i = m + 1 j = n .判断循环首 (i ≤ j) .判断循环首 (i ≤ n 且 list [i] ≤ key) i = i + 1 .判断循环尾 () .判断循环首 (j ≥ m 且 list [j] > key) j = j - 1 .判断循环尾 () .如果真 (i < j) swap (list [i], list [j]) .如果真结束 .判断循环尾 () swap (list [m], list [j]) quicksort (list, m, j - 1) quicksort (list, j + 1, n) .如果真结束 ' void quicksort(int list[], int m, int n) ' { ' int key, i, j, k; ' if (m < n) ' { ' k = choose_pivot(m, n); ' swap(&list[m], &list[k]); ' key = list[m]; ' i = m + 1; ' j = n; ' while (i <= j) ' { ' while ((i <= n) && (list[i] <= key)) ' i++; ' while ((j >= m) && (list[j] > key)) ' j--; ' if (i < j) ' swap(&list[i], &list[j]); ' } ' // 交换两个元素的位置 ' swap(&list[m], &list[j]); ' // 递归地对较小的数据序列进行排序 ' quicksort(list, m, j - 1); ' quicksort(list, j + 1, n); ' } ' } .子程序 swap .参数 x, 整数型, 参考 .参数 y, 整数型, 参考 .局部变量 temp, 整数型 temp = x x = y y = temp ' void swap(int *x, int *y) ' { ' int temp; ' temp = *x; ' *x = *y; ' *y = temp; ' } .子程序 choose_pivot, 整数型 .参数 i, 整数型 .参数 j, 整数型 返回 ((i + j) ÷ 2) ' int choose_pivot(int i, int j) ' { ' return((i + j) / 2); ' } .子程序 _按钮1_被单击 .局部变量 list, 整数型, , "30000" .局部变量 i, 整数型 .局部变量 temp, 整数型 .局部变量 time, 整数型 置随机数种子 () time = 取启动时间 () .计次循环首 (取数组成员数 (list), i) list [i] = 取随机数 (, ) .计次循环尾 () quicksort (list, 1, 取数组成员数 (list)) 调试输出 (list) 调试输出 (取启动时间 () - time)
@沧海
- 上一篇: 鼠标指针特性泡泡源码
- 下一篇: 精易模块[v7.6.0]
猜你喜欢
- 2019-06-02 易语言快速排序 支持倒序
- 2019-04-28 易语言快速排序源码
- 2017-02-19 希尔排序模块源码-10万超级列表框排序只花1秒
- 2017-02-16 可视化排序之 - 冒泡排序源码
- 2017-02-15 可视化排序之 - 希尔排序源码
你 发表评论:
欢迎- 百度站内搜索
- 关注微信公众号
- 网站分类
-
- 网站公告
- 电子书书籍
- 程序员工具箱
- 编程工具
- 易语言相关
- 网络相关源码
- 图形图像源码
- 系统工具源码
- 易语言模块源码
- 易语言支持库
- 数据库类源码
- 易语言例程
- 易语言游戏开发
- 易语言模块
- 多媒体类源码
- 易语言资源网
- 易语言视频教程
- JS分析教程
- 易语言图文教程
- 易语言常见问题及笔记
- 工具源码
- 易语言版本
- 网络编程
- javascript
- PHP编程
- html
- 正则表达式
- 面试题
- nodejs
- 其它综合
- 脚本专栏
- python
- 按键精灵相关
- 按键精灵图文教程
- 按键精灵视频教程
- 按键精灵Q语言
- 按键精灵安卓版
- golang
- 游戏安全
- 火山相关
- 火山安卓软件
- 火山常见问题及笔记
- 火山安卓源码
- 火山视频教程
- 火山PC版本下载
- 火山PC视窗例程
- 互联网那些事
- 引流推广
- 项目揭秘
- 网络营销
- 营销软件
- QQ营销软件
- 娱乐软件
- 机器人插件
- 培训教程
- 技术教程
- 活动线报
- 数据库
- Redis
- Access
- MongoDB
- Mysql
- 问答
- 其它
- 易语言
- 需求
- 在线教程
- 多线程培训班
- 觅风易语言教程
- 模拟系列教程
- 集中营易语言教程
- 历史数据
- 随机tag
已有2位网友发表了看法:
易语言 评论于 [2020-03-23 10:36:21] 回复
易语言quicksort
易语言资源 评论于 [2021-12-06 14:15:11] 回复
易语言快速排序