c语言合并两个数组并排序(c语言将两个数组合并并排序)

c语言合并两个数组并排序(c语言将两个数组合并并排序)前言 适合学习了数据结构顺序表后做 此题虽然简单 但是必须结合画图进行分析 同时要仔细阅读题目 思路 但是题目中并没有让我们合并到新数组中 而是要求合并到 nums1 中 题目中已经将空间开好 思路 2 采用三指针 i1 和 i2 从后往前进行比较 例如开始时 i1 指向 nums1 中的 3 i2 指向 nums2 末尾的 6 j 指向 nums1 末尾的 0 3 lt 6 将 i2 指向的值给了 j 然后 i2

大家好,我是讯享网,很高兴认识大家。



前言:

适合学习了数据结构顺序表后做,此题虽然简单,但是必须结合画图进行分析,同时要仔细阅读题目。

思路:

但是题目中并没有让我们合并到新数组中,而是要求合并到nums1中,题目中已经将空间开好

思路2:采用三指针,i1和i2从后往前进行比较,例如开始时:

i1指向nums1中的3,i2指向nums2末尾的6,j指向nums1末尾的0;

3<6,将i2指向的值给了j,然后i2–,j–;


讯享网

i1暂时不需要向前偏移,将继续和i2指向的下一个位置进行比较

如上图,我们采取,指针从后逐渐向前偏移的方式,使得nums2从后往前放到nums1后面,但是通过画图,我们发现会出现两种情况:

1.当i2先走完,这时nums1中的元素就是合并后的结果。

2.当i1先走完,这时,需要将nums2中剩余的值放到nums1中,此时的nums1才是最后的结果。

这里本章内容就介绍完了,文章中某些内容我们之前有介绍,所以只是一笔带过,还请谅解。

希望以上内容对大家有所帮助👀,如有不足望指出🙏

小讯
上一篇 2025-04-20 09:18
下一篇 2025-04-22 19:24

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/152824.html