Merge 是一种将两个有序数组重新排序从而生成一个新的有序数组的办法的算法,而对于一个无序数组而言,可以先将数组的前后两半排好序,再利用Merge将该数组的前后两半重新排序。而随着问题规模的减小这也不难看出是一个递归的过程。先将利用merge将部分有序数组排序的算法写好,再在另一个函数里通过递归及反复调用Merge实现,最终在主函数里调用即可。在merge排序过程中为了减小移动次数需要建立临时数组,但我在将临时数组值传回原数组的过程中,由于将临时数组的大小误认为是high值,从而导致临时数组溢出,最终及时发现问题从而完成算法编写。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步