详解易语言的冒泡算法

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

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

下面给出易语言源码

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

分享下本次脚本的下载源码地址:易语言的冒泡算法游戏脚本源码

(0)

相关推荐

  • 解决易语言编程乱码的问题

    因为易语言不支持Unicode,大家编写的程序在台湾或是香港等地使用的时候常遇到的问题就是乱码,因为那里是繁体字系统. AppLocale一款由微软出品的解决乱码的软件.微软为XP专门制作了Microsoft AppLocale这款软件,用来解决汉字的编码问题. 多语言支持工具,可以让非Unicode的软件在Windows XP/2003上运行,即可以同时执行简繁体日文等各种语言的软件:不管是日文.韩文.法文都可适用,任何文字编码的程序都借由它来正确地显示文字,享受原本只有Unicode的程序才

  • 解决易语言多线程出错的问题

    log_Content 最近在给客户写软件,发现我这边一直没有发现出错的问题,但是客户的软件一运行多线程就出错,一直找不到问题,找了好久才找到解决方法,原来是CPU的问题,多线程对于双核CPU亲和性上有问题,现在找到问题的解决方法,顺便记录一下,或许有朋友遇到同样的问题,可以一起参考. DLL命令: .版本 2 .DLL命令 SetProcessAffinityMask, 整数型, , , 公开, 设置CPU亲和性 进程句柄 返回CPU号 .参数 hProcess, 整数型 .参数 hProce

  • 总结易语言节点与栈的操作方法

    以下就是本次我们给大家分享了易语言节点与栈的操作的实例代码和相关内容: .版本 2 .支持库 EDataStructure .程序集 窗口程序集1, , , 易语言节点与栈的操作 .子程序 _按钮1_被单击 .局部变量 栈, 栈 .局部变量 yyy, 节点 .局部变量 zzz, 节点 .局部变量 ttt, 节点 .局部变量 获取栈的节点信息1, 文本型 .局部变量 获取栈的节点信息2, 日期时间型 yyy.加入属性 ("姓名", "张三") yyy.加入属性 (&q

  • 如何让易语言的信息框总在最前

    有时候,大家设置了某窗口的"总在最前"属性为"真",但是如果要弹出信息框的话,那么就有可能会跑到此窗口的后面.因此通常的作法是将此窗口的"总在最前"属性为"假",当弹出信息框后,再将此窗口的"总在最前"属性为"真". 但是通过以上的操作后,可能会有多个窗口需要来回置属性,置属性前还要判断此窗口是否已创建,否则会报错.并且本来希望这个程序是一定要在最前方的,结果弹出信息框后,这些窗口失去了

  • 易语言代码中嵌入汇编/机器码方法

    很多朋友在编写易语言里要混合插入汇编语言等,如何解决呢?我们来看下 我们都知道,C++或Delphi的程序源代码中可以嵌入汇编代码,以达到某些特定目的.易语言作为实用而又功能强大的编程语言,也允许在代码中嵌入汇编,--当然严格来说,是嵌入机器指令代码.借助"特殊功能支持库"中的"置入代码"命令,可以完成这项功能.(liigo 2009.03.20补记:自易语言4.12版本起,"置入代码"已被移入核心支持库.) 为什么要在易语言中"置入代

  • 详解易语言的冒泡算法

    我们做一些游戏脚本软件时候,经常要用到这个算法,比如求解离自己身边最近的怪物优先攻击,就要用到这个算法,冒泡算法可以快速的把一组数据按照从大到小,或者从小到大的顺序进行快速排序. 冒泡算法的核心就是,从第一位开始把数据提取出来,跟余下的数据逐一进行比大或者小(看你是按照从大到小,还是从小到大顺序进行排),大或者小的数交换位置,第一位比较完毕后,再从二个位开始把数据提取出来,跟余下的数据进行比较,依次进行. 下面给出易语言源码 .版本 2 .支持库 spec .子程序 子程序_按照从小到大排序 .

  • 详解易语言的程序的输入方法概念

    为了便于输入程序,易语言内置四种名称输入法:首拼.全拼.双拼.英文.三种拼音输入法均支持南方音及多音字.首拼输入法及全拼输入法在系统中被合并为"首拼及全拼输入法",系统自动判别所输入的拼音是首拼方式还是全拼方式.双拼输入法的编码规则与 Windows 系统所提供的双拼输入法一致.例如:欲输入"取整 (1.23)"语句,各种输入法的输入文本为: ・ 首拼及全拼输入法: qz(1.23) 或者 quzheng(1.23) ・ 双拼输入法: quvg(1.23) ・ 英文

  • 详解C语言中双指针算法的使用

    目录 前言 一.最长不含重复字符的子字符串 1.题目要求 2.个人题解 二.和为S的两个数字 1.题目要求 2.个人题解 前言 双指针算法 算法思想 双指针,指的是在遍历对象的过程中,不是普通的使用单个指针进行访问,而是使用两个相同方向(快慢指针)或者相反方向(对撞指针)的指针进行扫描,从而达到相应的目的. 换言之,双指针法充分使用了数组有序这一特征,从而在某些情况下能够简化一些运算. 今天带大家来学习算法中双指针的应用场景. 一.最长不含重复字符的子字符串 1.题目要求 2.个人题解 2.1

  • 详解易语言字符命令

    易语言字符命令,这个命令比较少见,但是有用,我教大家操作. 1.易语言新建一个windows窗口 点击进入代码编辑区 具体看如何用易语言编写自己第一个程序? 2.我们输入 这个命令 字符() 3.展开这个字符命令 我们发现只有一个参数 4.这个参数比较少见,字节型它的取值范围为0~255 我们输入100看看 5.运用调试输出这个函数,具体看易语言调试输出函数实例详解 我们输入调试输出 (字符 (100)) 6.结果为 d 这个需要对照 ASCII表看看

  • 详解易语言中的数据类型

    各种数据存放在磁盘或内存中都有其不同的存放格式,因此就存在不同的数据类型.了解各种数据的特性,对编程开发来说是十分重要. 程序中经常会进行一些运算,易语言中的运算都要使用运算符进行识别处理,并通过运算表达式来完成运算操作.程序中对各数据之间的关系的描述也要通过运算符. 1.易语言的数据类型 一个程序内部应包括两个方面的内容:1.数据的描述.2.操作步骤,即对程序动作的描述. 数据是程序操作的对象,操作的结果会改变数据的内容.打个比方:要做一道菜,做菜前先选择烹饪的原材料(即对数据进行描述),然后

  • 详解易语言变量用法和原理

    易语言是一款可视全中文的编程语言,由于他的简单易用,深受国人喜欢,下面我来为大家介绍易语言变量的用法. 易语言变量,就像是数学中设x一样,顾名思义它是不定值的,它分为局部变量,全局变量,和程序集变量,下面我为用一个程序来向大家介绍这3种变量的区别. 打开易语言,新建一个windows窗口程序,将按钮按下图所示排列. 点击插入,选择窗口,插入一个新的窗口,点击按钮1,写入代码入下图所示, 点击窗口程序集,回车,添加一个程序集变量,命名为c,类型为文本型. 点击插入,分别添加全局变量,命名为q,类型

  • 详解易语言写内存整数型

    本篇文章主要介绍如何使用编程软件"易语言"做到修改指定进程的指定内存地址中的整数型数据. 1.启动"易语言". 2.选择"菜单栏"中的"f.程序",再在弹出的列表中选择"N.新建". 3.在弹出的标题为"新建:"的窗口中选择"Windows窗口程序",再点击标题为"确定(o)"的按钮. 4.在背景为灰色的,且标题为""(空的文本

  • 详解易语言线程同步

    在易语言官方多线程支持库中提供线程同步的方法是用许可区. 加入许可区之后可以防止多个线程同时访问公用变量是发生冲突.加入许可区的代码同时只能有一个线程访问,避免冲突. 创建许可区: 创建并返回一个进入许可证数值,此许可证值用作进入程序中的指定许可代码区,以避免多线程冲突.成功返回非零整数值,失败返回0.所创建的许可证在不再使用后,必须使用"删除进入许可证"命令将其删除.本命令为初级命令. 删除进入许可证: 删除由"创建进入许可证"命令所创建返回的进入许可证.成功返回

  • 详解易语言常量用法

    易语言常量用法,我用实例讲解,下面一步步操作,大家学懂了,给我投一票,谢谢! 1.易语言新建一个windows窗口点击常量表进入 2.ctrl+N 就会增加一列 如图 3.我们设置常量 分别在相应位置输入数据  如图 4.我们双击 新建的窗口 进入代码编辑区 输入_启动窗口.标题=#常量1 5.这里介绍下 常量的用法 就是常量名前面加上# 看图 这样就把它的值使用了 6.我们运行看看结果 看图 标题改变成了我们设置的常量

  • 详解易语言时钟的用法

    易语言时钟是易语言的一个基本组件,有时程序很常用,也非常重要. 1.打开易语言 2.新建一个windows窗口程序,把时钟,标签如下图所示放置 3.在2个时钟的属性事件中都选择周期事件 4.添加一个常量,命名为时间,数值为30 5.双击启动窗口,开始编写,写入代码如下图所示 6.点击运行,时钟的功能就展现出来了,时钟的功能主要是倒计时,计时等功能,功能小,功能效果如下面的动态图所示 以上六个步骤就是关于易语言时钟用法的教程,如果还有任何问题大家可以给小编留言,感谢大家对我们的支持.

随机推荐