谁说按键精灵low,按键精灵冒泡排序算法!
Posted 土味工程师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谁说按键精灵low,按键精灵冒泡排序算法!相关的知识,希望对你有一定的参考价值。
计算机语言都有共同点,虽然学这门语言的 人大多数没有什么编程基础,更别提什么算法了,还好我学过一点py,对算法还是知道一星半点,大部分人都是按着视频打代码,或者百度粘贴复制,很少人用自己的思想做出一些有趣的东西。接下来介绍一下简单的冒泡排序算法给大家分享一下。所有语言通用,最主要的是思想,平时打代码大多数是只会算加法一样,掌握了算法,可能就像学会了乘法,效率很多。
1//定义一个六个元素的排序很乱的数组
2dim a = Array(1,9,8,7,4,3)
3//前提自己不能与自己比
4//最外面的循环i有四个循环
5//i的第一个循环是:第一个数分别第二个数,第三个,第四个,第五个比 ;也就是a(0)<>a(1),a(0)<>a(2),a(0)<>a(3),a(0)<>a(4),a(0)<>a(5)
6//i的第二个循环是:第一个数分别第二个数,第三个,第四个,第五个比 ;也就是a(1)<>a(1),a(1)<>a(2),a(1)<>a(3),a(1)<>a(4),a(1)<>a(5)
7//i的第三个循环是:第一个数分别第二个数,第三个,第四个,第五个比 ;也就是a(2)<>a(1),a(2)<>a(2),a(2)<>a(3),a(2)<>a(4),a(2)<>a(5)
8//i的第四个循环是:第一个数分别第二个数,第三个,第四个,第五个比 ;也就是a(3)<>a(1),a(3)<>a(2),a(3)<>a(3),a(3)<>a(4),a(3)<>a(5)
9//拿第一个循环来讲
10//假设最小值是a数组的第一个,也就是a(0)是最小的.
11//如果a(1)小于最小值,a(1)就要与a(0)交换位置 ,这时候进入22行的if条件判断,不是的话就进入下一个a(0)和a(2)比较了
12//现在假如a(1)小于a(0),交换位置开始:
13//让最小值等于a (1), 更新对比后的最小值,让最小值在对比的时候始终最小。(更新最小值)
14//然后定义一个临时值等于a(0),等下要用,此时a(0)为最小值,此时a(0)的值比a(1)大。(设置临时值备用)
15//继续让a(0) = a(1),这句话的意思是此时a(0)是最小值,把a(0)赋值比自己还小的a(1)(大值变小)
16//让a(1) = 临时值,这个临时之就是一开始定义的a(0)变化之前的临时值,这就让a(1)等于最小值了(小值变大)
17For i = 0 To 4
18 Dim mi= a(i)
19 For j = i + 1 To 5
20 If a(j) < mi Then
21 mi = a(j)
22 Dim ls = a(i)
23 a(i) = a(j)
24 a(j) = ls
25 End If
26 Next
27Next
28
29//计算数组长度
30dim k = UBound(a)
31For l = 0 To k
32//依次输出a数组的元素
33TracePrint "a数组的第"&l&"个数是"&a(l)
34Next
以上是关于谁说按键精灵low,按键精灵冒泡排序算法!的主要内容,如果未能解决你的问题,请参考以下文章