Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 元素素数的合并排序?_C_Sorting_Python 2.7_Mergesort - Fatal编程技术网

C 元素素数的合并排序?

C 元素素数的合并排序?,c,sorting,python-2.7,mergesort,C,Sorting,Python 2.7,Mergesort,据我所知,在合并排序中,我们必须将元素分成若干组。 但若数是素数,那个么除法怎么可能呢?我们把他们分成不平等的群体吗? 如果您要展示一个实现,请用C或Python来实现。假设有2k+1,它将被分成两部分,k和k+1元素不一定是均匀划分的,但让每个组拥有尽可能少的元素将获得最小的总体复杂度 这是m路合并排序的一般原则,其中m表示您将拥有的组数。合并排序不要求您将列表拆分为大小相同的组。在任何正确编写的合并代码中,如果组的大小稍有不同,这一点都不重要 您通常希望它们接近相同的大小(以平均分配工作,降

据我所知,在合并排序中,我们必须将元素分成若干组。 但若数是素数,那个么除法怎么可能呢?我们把他们分成不平等的群体吗?
如果您要展示一个实现,请用C或Python来实现。

假设有2k+1,它将被分成两部分,k和k+1

元素不一定是均匀划分的,但让每个组拥有尽可能少的元素将获得最小的总体复杂度


这是m路合并排序的一般原则,其中m表示您将拥有的组数。

合并排序不要求您将列表拆分为大小相同的组。在任何正确编写的合并代码中,如果组的大小稍有不同,这一点都不重要


您通常希望它们接近相同的大小(以平均分配工作,降低排序的复杂性),但即使这样也不是严格必要的。即使将长度为N的序列分为长度为1和长度为(N-1)的子序列,基本的合并排序算法也会起作用(尽管性能会很差)。

“给我源代码”问题不是我们在这里要做的。看看自由职业者。或者,如果您有理论问题,请查看programmers.stackexchange或类似工具。我不确定您的意思。假设你有一组17个元素。您仍然可以将该数字除以5,从而创建4个组:17/5=3组5个元素加1组2个元素。我没有要求实现。我说的是,如果你用Java或其他语言解释它,我将无法理解。幸运的是,不需要特定的语言来帮助。对不起,如果我违反了“你的”规则。