-- 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 发布