-- region TestLua.lua
-- 2019.1.2
m_TempTuple = { }
--- <summary>
--- Merge(tuple, leftIndex, rightIndex, midIndex, tempTuple)
--- merge all elements between left index and right index. (contains mode)
--- the left array is tuple[leftIndex, midIndex]
--- the right array is tuple[midIndex + 1, rightIndex]
--- </summary>
function Merge(tuple, leftIndex, rightIndex, midIndex, tempTuple)
-- print("Merge", "leftIndex=" .. tostring(leftIndex), "rightIndex=" .. tostring(rightIndex), "midIndex=" .. tostring(midIndex))
local totalIndex = 1
-- left start index
local i = leftIndex;
-- right start index
local j = midIndex + 1;
-- copy elements from tuple to temp tuple in order.
-- util one of parts is empty among left and right part.
while (i <= midIndex and j <= rightIndex) do
if (tuple[i] <= tuple[j])
then
Lua递归式归并排序
最新推荐文章于 2020-06-25 20:28:49 发布
本文详细介绍了如何使用 Lua 编程语言实现归并排序的递归算法,通过拆分和合并过程,有效地将大型数据集排序。内容包括归并排序的基本原理、递归实现的步骤以及相关代码示例,帮助读者理解并掌握 Lua 中的归并排序技巧。
摘要由CSDN通过智能技术生成