我们做一些游戏脚本软件时候,经常要用到这个算法,比如求解离自己身边最近的怪物优先攻击,就要用到这个算法,冒泡算法可以快速的把一组数据按照从大到小,或者从小到大的顺序进行快速排序.
冒泡算法的核心就是,从第一位开始把数据提取出来,跟余下的数据逐一进行比大或者小(看你是按照从大到小,还是从小到大顺序进行排),大或者小的数交换位置,第一位比较完毕后,再从二个位开始把数据提取出来,跟余下的数据进行比较,依次进行.
下面给出易语言源码
.版本 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 }数组排序 (局_比较数组, 真)调试输出 (局_比较数组)
注:相关教程知识阅读请移步到易语言教程频道。