所以我有这个功课说:
“b)使用合并排序对下表中的值进行排序。显示每个递归调用并在单独的行上合并。您不需要显示单独的交换,因为第二个数组将用于执行此任务。假设右半部分和左半部分的值相等,则假设右半部分包含较大数量的值。步骤列应包含RRC(右递归调用),LRC(左递归调用)或M(合并) )“。 并向我显示一个表格,其中第一列为“Step”,其余列为数组或序列中每个数字的一个空格。该表有很多行,因此我可以在每一行填写排序步骤。 [是的我是菜鸟,我不知道如何在这个文本编辑工具上制作表格。]
我在这个家庭作业中遇到的问题是,我不知道教授所说的“左递归呼叫”或“右递归呼叫”以及“合并”也是如此。 我知道如何进行合并排序。我唯一不知道的是这些术语,我必须用它来填写每行的第一列。
我真的需要帮助,网上没有任何地方可以解释这个问题。
答案 0 :(得分:0)
Merge Sort是recursive算法,通过将列表(或表,数组或whathaveyou)拆分成大致相等的长度来运行。
因此,由于您将值列表分成两部分,一个可以被视为左部分,一个可以被视为右部分。然后,您递归地对每个进行排序。
你现在可以弄清楚LRC和RRC所指的是什么吗?