归并两个已排序数组

时间:2022-06-08
本文章向大家介绍归并两个已排序数组,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

已知两个已排序数组,将这两个数组合并为一个排序数组。设a[i]对应数组1的元素,b[j]对应数组2的元素,则a[i],b[j]哪个元素小即将它添加到结果数组中,再将对应指针向前移动,直到遍历所有的元素。

include<vector>
void merge_sort_two_vec(std::vector<int> & sub_vec1,std::vector<int> &sub_vec2,std::vector<int> &vec){
    int i = 0;
    int j = 0;
    while(i < sub_vec1.size() && j <sub_vec2.size() ){
        if(sub_vec1[I] < sub_vec2[j]){
            vec.push_back(sub_vec1[I]);
            i ++;
       }
        else{
            vec.push_back(sub_vec2[j])
            j ++ ;
        }
        for( ; i < sub_vec1.size(); I  ++){
            vec.push_back(sub_vec1[I]);
        }
        for(; j < sub_vec2.size();j ++){
            vec.push_back(sub_vec2[j]);
        }
}
}