【算法】用lua解决快速排序问题

来源:互联网 发布:silk labo 知乎 编辑:程序博客网 时间:2024/04/29 23:51
如下


local list = { 3,1,5,18,34,32,0, }function printList()local str = ""for i = 1,#list dostr = str .. list[i] .. " "endprint(str)endfunction qsort(low,high)if low >= high thenreturn endlocal first = lowlocal last =  highlocal key = list[first]while first < last dowhile first < last and list[last] >= key do last = last - 1 endlist[first] = list[last]while first < last and list[first] <= key do first = first + 1 endlist[last] = list[first]endlist[first] = keyqsort(low,first - 1)qsort(first + 1,high)endprintList()qsort(1,#list)printList()


0 0