易语言在数组内 成员A 被 成员B 的部分字符包含 就删除成员A
.版本 2
.支持库 spec
.局部变量 数组, 文本型, , "0"
置随机数种子 ()
数组 = { “1”, “2”, “3”, “11”, “22”, “33”, “111”, “222”, “333”, “123”, “123123” } ' 原数组 11个
' 数组 = { “111”, “222”, “333”, “123123” } ’达到这个效果
子程序2打乱顺序 (数组)
子程序3 (数组)
调试输出 (数组)
数组 = { “a”, “b”, “c”, “aa”, “bb”, “cc”, “aaa”, “bbb”, “ccc”, “abc”, “abcabc” } ' 原数组 11个
' 数组 = { “aaa”, “bbb”, “ccc”, “abcabc” } ’达到这个效果
子程序2打乱顺序 (数组)
子程序3 (数组)
调试输出 (数组)
.子程序 子程序2打乱顺序
.参数 参数, 文本型, 数组
.局部变量 i1, 整数型
.局部变量 cd, 整数型
.局部变量 sj, 整数型
.局部变量 a, 文本型
cd = 取数组成员数 (参数)
.计次循环首 (cd, i1)
sj = 取随机数 (1, cd)
a = 参数 [i1]
参数 [i1] = 参数 [sj]
参数 [sj] = a
.计次循环尾 ()
.子程序 子程序3
.参数 参数, 文本型, 数组
.局部变量 i1, 整数型
.局部变量 i2, 整数型
.局部变量 i3, 整数型
.计次循环首 (2, i3)
.变量循环首 (取数组成员数 (参数), 1, -1, i1)
.变量循环首 (i1 - 1, 1, -1, i2)
.判断开始 (i3 = 1)
.如果真 (取文本长度 (参数 [i1]) < 取文本长度 (参数 [i2]))
交换变量 (参数 [i1], 参数 [i2])
.如果真结束
.默认
.如果真 (参数 [i1] ≈ 参数 [i2])
.判断开始 (参数 [i1] < 参数 [i2])
删除成员 (参数, i1, 1)
.默认
删除成员 (参数, i2, 1)
.判断结束
跳出循环 ()
.如果真结束
.判断结束
.变量循环尾 ()
.变量循环尾 ()
.计次循环尾 ()