易语言之冒泡算法

      我们做一些游戏脚本软件时候,经常要用到这个算法,比如求解离自己身边最近的怪物优先攻击,就要用到这个算法,冒泡算法可以快速的把一组数据按照从大到小,或者从小到大的顺序进行快速排序.

      冒泡算法的核心就是,从第一位开始把数据提取出来,跟余下的数据逐一进行比大或者小(看你是按照从大到小,还是从小到大顺序进行排),大或者小的数交换位置,第一位比较完毕后,再从二个位开始把数据提取出来,跟余下的数据进行比较,依次进行.

     下面给出易语言源码

    

.版本 2
.支持库 spec

.子程序 子程序_按照从小到大排序
.局部变量 局_比较数组, , , "0"
.局部变量 i
.局部变量 j
.局部变量 局_临时, 整数型

局_比较数组 = { 12, 34, 73, 23, 733, 3456, -46, 11, 67, 35, 64 }
.计次循环首 (取数组成员数 (局_比较数组), i)
    .变量循环首 (i + 1, 取数组成员数 (局_比较数组), 1, j)
        .如果真 (局_比较数组 [i] > 局_比较数组 [j])
            局_临时 = 局_比较数组 [i]
            局_比较数组 [i] = 局_比较数组 [j]
            局_比较数组 [j] = 局_临时
        .如果真结束

    .变量循环尾 ()
.计次循环尾 ()
调试输出 (局_比较数组)

 

易本身也有冒泡算法的函数,就是数组排序这个函数,这个代码就很简单了

.版本 2
.支持库 spec

.子程序 易语言_按照从小到大排序
.局部变量 局_比较数组, 整数型, , "0"

局_比较数组 = { 12, 34, 73, 23, 733, 3456, -46, 11, 67, 35, 64 }
数组排序 (局_比较数组, 真)
调试输出 (局_比较数组)

 

 

代码下载位置:https://files.cnblogs.com/qq32175822/mp.rar

posted on 2014-01-02 17:55  shellcode  阅读(2912)  评论(0编辑  收藏  举报

导航