易语言递归算法怎么用,求高手给举个简单点的例子

易语言递归算法怎么用,求高手给举个简单点的例子,第1张

递归,简单说是子程序自己调用自己。

例子:

.版本 2

.子程序 左右查找

.参数 左边值, 整数

.参数 右边值, 整数型

.参数 查找数组, , 数组

.参数 ww, , 参考 可空 数组

.局部变量 i, 整数型

.局部变量 j, 整数型

.局部变量 中间值, 整数型

.如果真 (左边值 ≥ 右边值)

返回 ()

.如果真结束

i = 左边值

j = 右边值

.判断循郑升环首 (j ≠ i)

.判断循环首 (查找数组 [左边值] ≤ 查找数组 [j] 且 i < j)

j = j - 1

.判断循环尾 ()

.判断循环首 (查找数组 [左边值] ≥ 查找数颤仿组 [i] 且 i < j)

i = i + 1

.判断循环尾 ()

.如果真 (i < j)

中间值 = 查找数组 [j]

查找数组 [j] = 查找数组 [i]

查找数组 [i] = 中间值

.如果真结束

.判断循环尾 ()

中间值 = 查找数组 [左边值]

查找数组 [左边值] = 查找数组 [i]

查找数组 [i] = 中间值

左右查找茄丛纤 (左边值, i - 1, 查找数组, ) ' 继续处理左边的,这里是个递归的过程

左右查找 (i + 1, 右边值, 查找数组, ) ' 继续处理右边的,这里是个递归的过程

ww = 查找数组

' 以上是快速排序的代码实现,核心所在是递归的过程。

.版本 2

.程虚和序集 窗口程序集_启动窗口

.子程序 _按钮1_被单击

.局部变量 a, 整数型, , "5"

a = { 1, 2, 3, 4, 5 }

排列 (a, 3)

.子程序 排粗竖列

.参数 a, 整数型, 数组

.参数 n, 整数型

.局部变量 i, 整数型

.局部变量 j, 整数型

.局部变量 k, 整数型

.局部变量 临时文本, 文本型

.计次循环首 (到整数 (求次方 (2, 取数组成员数 (a))) - 1, i)

k = 0

临时文本 = “”

j = 1

.判断循环首 (i ≠ 0)

.如果真 (i % 2 = 1)

k = k + 1

临时文本 = 临时文本 + 到文本 (a [j])

.如果真结束

i = i ÷ 2

j = j + 1

.判断循环尾 ()

.如果真 (k = n)

编辑框1.加入文本 (临时文本 + #换行符)

.如果岩誉大真结束

.计次循环尾 ()


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8247070.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-14
下一篇2023-04-14

发表评论

登录后才能评论

评论列表(0条)

    保存