leetCode88. 合并两个有序数组

leetCode88. 合并两个有序数组


题目思路


代码

cpp 复制代码
class Solution {
public:
    void merge(vector<int>& nums1, int m, vector<int>& nums2, int n) {
        int k = m + n - 1;
        int i = m - 1, j = n - 1;

        while (i >= 0 && j >= 0) {
            if (nums1[i] >= nums2[j]) nums1[k--] = nums1[i--];
            else nums1[k--] = nums2[j--]; 
        }

        while (j >= 0) {
            nums1[k--] = nums2[j--];
        }

        // nums1的就不用判断了,因为已经在正确的位置了
    }
};
相关推荐
buyue__21 分钟前
C++实现数据结构——链表
数据结构·c++·链表
尋有緣2 小时前
力扣1327-列出指定时间段内所有的下单产品
leetcode·oracle·数据库开发
FMRbpm2 小时前
栈练习--------从链表中移除节点(LeetCode 2487)
数据结构·c++·leetcode·链表·新手入门
程序员-King.3 小时前
day109—同向双指针(字符串)—每个字符最多出现两次的最长子字符串(LeetCode-3090)
算法·leetcode·双指针
青山的青衫3 小时前
【单调栈和单调队列】LeetCode hot100+面试高频
算法·leetcode·面试
狗头实习生3 小时前
电话号码字母组合
java·算法·leetcode
sin_hielo3 小时前
leetcode 3432
数据结构·算法·leetcode
尋有緣4 小时前
力扣1083-销售分析II
leetcode·oracle·数据库开发
尋有緣4 小时前
力扣574-当选者
leetcode·oracle·数据库开发