<div> <p>使用合并排序与快速排序的混合算法进行排序</p> </div>

JavaScript Hard sorting

任务 «<div> <p>使用合并排序与快速排序的混合算法进行排序</p> </div>»

实现一个混合排序算法,该算法使用快速排序(quicksort)对数组进行划分,如果子数组的大小小于或等于10,则对该子数组应用归并排序(merge sort)。输入为两个整数数组。需要将它们合并为一个数组,使用混合排序算法按升序排序,并输出结果。限制条件:每个数组的长度不超过10^5,元素为-10^9到10^9之间的整数。

输入格式

第一行包含一个整数 n — 第一个数组中的元素数量。第二行包含 n 个由空格分隔的整数。第三行包含一个整数 m — 第二个数组中的元素数量。第四行包含 m 个由空格分隔的整数。

输出格式

一行,包含合并后数组的已排序元素,元素之间用空格分隔。

示例

示例 1

输入
3 1 3 5 2 2 4
输出
1 2 3 4 5

示例 2

输入
1 10 1 5
输出
5 10

示例 3

输入
0 0
输出
main.js