Lua 快速排序

2021-08-29 08:09:18 字數 656 閱讀 1968

開始學習lua,打算先用lua來寫一下排序演算法,這是個開始。希望能堅持下去。先是快排**如下(就不解釋了邏輯和c#一樣只是語法格式問題)

myarr = 

function quicksort(arr,left,right)

index = arr[left]

l = left

r = right

while l < r do

while l < r and index <= arr[r] do

r = r - 1

endarr[l] = arr[r]

while l < r and index >= arr[l] do

l = l+1

endarr[r] = arr[l]

endarr[l] = index

if l - left > 1 then

quicksort(arr,left,l - 1)

endif right - r > 1 then

quicksort(arr,r+1, right)

endendquicksort(myarr,1,#myarr)

for k,v in pairs(myarr) do

print(v)

end

Lua的排序演算法 快速排序

a 快速排序 以陣列最左邊的值為基準,比它小的放左邊,比它大的放右邊,然後再對左右兩邊的陣列進行同樣的操作,直到細分排列完成 local function kuaisupaixu arr,startindex,endindex if startindex endindex then return e...

快速排序 Lua語言實現

快速排序 選一基準元素,依次將剩餘元素中小於該基準元素的值放置其左側,大於等於該基準元素的值放置其右側 然後,取基準元素的前半部分和後半部分分別進行同樣的處理 以此類推,直至各子串行剩餘乙個元素時,即排序完成 模擬二叉樹的思想,from up to down 平均時間複雜度 o nlogn 穩定性 ...

lua 快速了解

lua is free software distributed in source code.it may be used for any purpose,including commercial purposes,at absolutely no cost.lua是以源 形式發布的自由軟體。它可...