合并两个有序数组

-
- 先将两个数组合并,再将数组进行排序。相对来说操作简单,但是组成新数组后再进行排序所消耗的时间就更多一些。
-
- 使用双指针的方法,通过两个数组中的数字一一比较 然后存入一个临时数组中,这样做的后果是整个程序所消耗的时间很短,但是就需要重新创建一个临时数组,相对来说算法的空间复杂度就稍微多了些。

-
- 在优化,使用双指针的方法,但是不同于2的方法,2是从两个数组的头部开始使用指针。如果从两个数组的数字的尾部开始使用指针,通过一一比较,将较大的数字存入num1最后一位。然后向前移动指针进行比较,最后得到的数组也是有序的排列。
-- 1是最简单的暴力解题方法但是所消耗的时间比较大,时间复杂度高;2相对与1来说,运用了指针的方法将程序的时间复杂度降低,避免了合并数组之后的再排序;3相对与2来说,将2的接替方法进行改进,避免了使用temp数组,直接将在num1和num2之上进行操作,将指针反向,降低了程序的空间复杂度。
- 一个好算法的出现,需要不断拓展思路,将解题方法不断优化,努力做到时间复杂度和空间复杂度降到最低。另外合理利用指针,可以将问题的解法降低时间的空间的消耗。
posted @
2022-04-02 20:00
云吞豚
阅读(
132)
评论()
收藏
举报