【发布时间】:2011-04-01 23:36:26
【问题描述】:
A[] -> 1 3 5 7 2 4 6 8 //
lb=0,mid-1=3,mid+1=4,ub=7;
a=3,b=7,ab=7;
第一次迭代
a=3,b=6,ab=6;
第二次迭代
swap(A[ab],A[a]) // int t;我将用于临时存储
1 3 5 6 2 4 7 8
b=5,ab=5; 排序(A,lb,mid-1); // 使用冒泡排序
第三次迭代
交换(A[ab],A[a])
1 3 5 4 2 6 7 8
b=5,ab=4
sort(A,lb,mid-1) // 使用冒泡排序
这是使用就地合并进行合并排序的正确方法吗?这是我第一次尝试就地合并。如果方法不正确,有人可以建议我。
【问题讨论】:
-
为什么要在归并排序中混合冒泡排序?
标签: algorithm data-structures language-agnostic mergesort