• 易语言之冒泡算法


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

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

         下面给出易语言源码

        

    .版本 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 }
    数组排序 (局_比较数组, 真)
    调试输出 (局_比较数组)

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

  • 相关阅读:
    比较实用的断点调试技巧
    objc非主流代码技巧
    0代码ViewController
    xib的动态桥接
    ios中集合遍历方法的比较和技巧
    再见了NSLog
    Reactive Cocoa Tutorial [4] = 只取所需的Filters
    objc@interface的设计哲学与设计技巧
    ARC下dealloc过程及.cxx_destruct的探究
    Reactive Cocoa Tutorial [3] = "RACSignal的巧克力工厂“;
  • 原文地址:https://www.cnblogs.com/qq32175822/p/3502294.html
Copyright © 2020-2023  润新知