使用Lua代码实现一个快速排序
时间: 2023-10-16 22:17:20 浏览: 147
lua-tuple:Lua 元组。 Lua 的可变和内部元组表。 元组可以按字典顺序排序并默认连接
我可以帮您回答这个问题。以下是Lua语言的快速排序代码示例:
```
function quicksort(arr, low, high)
if low < high then
local pivot = partition(arr, low, high)
quicksort(arr, low, pivot - 1)
quicksort(arr, pivot + 1, high)
end
end
function partition(arr, low, high)
local pivot = arr[high]
local i = low - 1
for j = low, high - 1 do
if arr[j] < pivot then
i = i + 1
arr[i], arr[j] = arr[j], arr[i]
end
end
arr[i + 1], arr[high] = arr[high], arr[i + 1]
return i + 1
end
-- example usage
local arr = {5, 2, 9, 4, 7, 6, 1, 3, 8}
quicksort(arr, 1, #arr)
for i = 1, #arr do
print(arr[i])
end
```
这个快速排序算法使用了递归的方式来实现,可以将一个数组从小到大排序。
阅读全文