考虑两个长度为 N 的数组 A 和 B,其中 N 相当小。我想对 A 中的元素进行排序并将排序后的元素存储在 B 中。
在 A 上进行就地插入排序,然后将排序后的值批量复制到 B 将相当简单。但是,这无法利用两件事:
- 有大小为 N 的暂存空间可供使用,并且
- 排序后的值最终需要在 B 而不是 A 中结束。
谁能提出不同的方法(可能是修改后的插入排序?),以利用其中一个(或两者)并最终胜过插入排序+复制的简单解决方案?
考虑两个长度为 N 的数组 A 和 B,其中 N 相当小。我想对 A 中的元素进行排序并将排序后的元素存储在 B 中。
在 A 上进行就地插入排序,然后将排序后的值批量复制到 B 将相当简单。但是,这无法利用两件事:
谁能提出不同的方法(可能是修改后的插入排序?),以利用其中一个(或两者)并最终胜过插入排序+复制的简单解决方案?