Excel·VBA数组冒泡排序函数

您所在的位置:网站首页 vba快速排序 Excel·VBA数组冒泡排序函数

Excel·VBA数组冒泡排序函数

2023-08-13 23:04| 来源: 网络整理| 查看: 265

目录 1,一维数组冒泡排序函数2,二维数组冒泡排序函数举例

1,一维数组冒泡排序函数 Function bubble_sort(arr, Optional mode As String = "+") '函数定义bubble_sort(数组,排序模式)对一维数组数据进行排序,返回一个有序一维数组 '2种排序模式,"+"即升序、"-"即降序 Dim i As Long, j As Long, sorted As Boolean, temp, last_index, sort_border sort_border = UBound(arr) - 1 '排序边界,之后为有序,减少循环 If mode = "+" Then For i = LBound(arr) To UBound(arr) sorted = True '初始为有序,避免中途有序后的无效循环 For j = LBound(arr) To sort_border If arr(j) > arr(j + 1) Then sorted = False '无序 temp = arr(j) '交换数据 arr(j) = arr(j + 1): arr(j + 1) = temp last_index = j '最后排序的序号 End If Next sort_border = last_index ': Debug.Print "sort_border", sort_border If sorted Then Exit For '如果为有序,则退出循环 Next ElseIf mode = "-" Then For i = LBound(arr) To UBound(arr) sorted = True '初始为有序,避免中途有序后的无效循环 For j = LBound(arr) To sort_border If arr(j)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3