| @1185384801 大佬造的排序模板模块,很实用。 底层算法都已经写好了,基本数据类型的排序器也有了,缺少一个自定义数据类型,
 由于我没有骚操作,教大家如何老老实实对【自定义数据】进行排序。
 
 构造一个模板类,改几个参数即可
 
    | 窗口程序集名 | 保 留 | 保 留 | 备 注 |  | 排序器_自定义数据, 抽象排序器, , 一定得填上基类 |  |  |  |  | 变量名 | 类 型 | 数组 | 备 注 |  | m_data | 自定义数据 | 0 |  | m_save | 自定义数据 |  | 
 |
 | 排序 |  |  |  |
 | p_排序算法实现 | 抽象排序算法 |  |  |  |  p_欲排序的数组 | 自定义数据 |  |  |  | p_升序排列 | 逻辑型 |  |  |  | 
 | 变量名 | 类 型 | 静态 | 数组 | 备 注 |  | l_p2int_this | 整数型 |  |  |  | l_this | 抽象排序器 |  |  | 
 l_p2int_this = 指针到整数 (类自身 () )Exchange ( l_p2int_this, l_this, p_欲排序的数组, m_data)  如果 ( p_升序排列)  p_排序算法实现.p_升序排列 (取数组成员数 ( m_data) , l_this)  p_排序算法实现.p_降序排列 (取数组成员数 ( m_data) , l_this)Exchange (l_p2int_this, l_this, p_欲排序的数组, m_data) |
 | 去重复 |  |  |  |
 | p_排序算法实现 | 抽象排序算法 |  |  |  |  p_欲排序的数组 | 自定义数据 |  |  |  | 
 | 变量名 | 类 型 | 静态 | 数组 | 备 注 |  | l_p2int_this | 整数型 |  |  |  | l_this | 抽象排序器 |  |  | 
 l_p2int_this = 指针到整数 (类自身 () )Exchange ( l_p2int_this, l_this, p_欲排序的数组, m_data) p_排序算法实现.p_去重复 (取数组成员数 ( m_data) , l_this)Exchange ( l_p2int_this, l_this, p_欲排序的数组, m_data) |
 | 比较 | 整数型 |  |  |
 | p_data1 | 自定义数据 |  |  |  |  p_data2 | 自定义数据 |  |  |  | 
  判断 ( p_data1.参数二 > p_data2.参数二 或  p_data1.参数二 = p_data2.参数二 且  p_data1.参数三 > p_data2.参数三)  返回 ( 1)  判断 ( p_data1.参数二 = p_data2.参数二 且  p_data1.参数三 = p_data2.参数三)  返回 ( 0)  返回 ( -1)  返回 (比较 (|
 | p_比较成员 | 整数型 |  |  |
 | 被比较的成员下标 | 整数型 |  |  |  |  作用比较的成员下标 | 整数型 |  |  |  | 
 m_data [ 被比较的成员下标] , m_data [ 作用比较的成员下标]) ) ASM_交换_变量交变量 (|
 | p_交换成员 |  |  |  |
 | 欲交换的成员下标 | 整数型 |  |  |  |  作交换的成员下标 | 整数型 |  |  |  | 
 m_data [ 欲交换的成员下标] , m_data [ 作交换的成员下标]) m_data [ 被覆写的成员]  = m_save m_save = m_data [ 被保存的成员]返回 (比较 ( m_data [ 欲比较的成员下标] , m_save) )删除成员 ( m_data, 欲删除的成员下标, )
 需要改的:
 1、私有成员的类型
 2、重构你的【比较】函数,我这里举了个例子,是先对参数二排序,再对参数三排序。
 
 
    置随机数种子 ()| 变量名 | 类 型 | 静态 | 数组 | 备 注 |  | 局_排序器 | 排序器_自定义数据 |  |  |  | 局_数据 | 自定义数据 |  | 0 |  | i | 整数型 |  |  |  | n | 整数型 |  |  | 
 n = 100重定义数组 ( 局_数据, 假, n)  计次循环首 ( n, i)  局_数据 [ i] .参数一 = “数据”  + 到文本 ( i)  局_数据 [ i] .参数二 = 取随机数 ( , )  ÷ 32767  局_数据 [ i] .参数三 = 取随机数 ( , )  计次循环尾 () 局_排序器.排序 ( 快速排序_ASM, 局_数据, 真)  调试输出 (“排序后”)  计次循环首 ( n, i)  调试输出 ( 局_数据 [ i] .参数一, 局_数据 [ i] .参数二, 局_数据 [ i] .参数三)  计次循环尾 ()
 
  自定义数据的排序.zip
(27.78 KB, 下载次数: 75) |