• leetcode Merge Sorted Array


    做这道题的时候思路不是很清晰。写的乱七八糟!!

    挺简单的一道题,向别人写的学习!!

    package Leetcode;
    
    public class MergeSortedArray {
        public static void merge(int A[], int m, int B[], int n) {
            int i = m + n - 1;
            int j = m - 1;
            int k = n - 1;
            if (n != 0 && m != 0) {
                for (; i >= 0 && j >= 0 && k >= 0; i--) {
                    if (A[j] > B[k]) {
                        A[i] = A[j];
                        j--;
                    } else {
                        A[i] = B[k];
                        k--;
                    }
                }
                if (j < 0) {
                    for (; k >= 0; k--)
                        A[k] = B[k];
                }
    
            }
            if (m == 0) {
                for (; i >= 0; i--) {
                    A[i] = B[k];
                    k--;
                }
            }
        }
    
    }
    public class Solution {
        public void merge(int A[], int m, int B[], int n) {
            int index = m + n;
            while (m > 0 && n > 0) {
                if (A[m - 1] > B[n - 1]) {
                    A[--index] = A[--m];
                } else {
                    A[--index] = B[--n];
                }
            }
            while (n > 0) {
                A[--index] = B[--n];
            }
        }
    }

      

  • 相关阅读:
    luogu P1396 营救
    luogu P2009 跑步
    2017 9 22
    2017 9 22 模拟赛T2
    2017 9 21
    luogu P1433 吃奶酪
    luogu p1867【Mc生存】经验值
    luogu p1387 最大正方形
    单例模式1
    Java 设计模式
  • 原文地址:https://www.cnblogs.com/lilyfindjobs/p/4051803.html
Copyright © 2020-2023  润新知