lua 写冒泡排序
问题 :
lua 写冒泡排序写法
回答:
以下是Lua实现的冒泡排序代码示例:
function bubble_sort(arr)
local len = #arr
for i = 1 , len - 1 do
local flag = true --优化:定义flag变量,如果一直没有交换元素则退出循环
for j = 1, len - i do
if arr[j] > arr[j + 1] then
arr[j], arr[j + 1] = arr[j + 1], arr[j]
flag = false --发生交换,重置flag为false
end
end
if flag then
break --没有发生交换,退出循环
end
end
return arr
end
--测试示例
local test_arr = {3, 1, 4, 2, 6, 5}
print(bubble_sort(test_arr))
--结果为:{1, 2, 3, 4, 5, 6}