LeetCode--Merge Sorted Array

Difficulty: Easy

【题目】Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements from B. The number of elements initialized in A and B are m and n respectively.

翻译

合并有序数组
难度系数:简单
合并两个有序数组。

// 时间复杂度n

[self getArrayA:@[@"1",@"4",@"7",@"10",@"15"] B:@[@"1",@"4",@"5",@"16",@"110"]];

- (NSArray *)getArrayA:(NSArray<NSString *> *)a B:(NSArray<NSString *> *)b {
    
    NSMutableArray *c = [[NSMutableArray alloc] init];
    int aInt = 0;
    int bInt = 0;
    for (int i = 0; i < a.count+b.count; i++) {

        if (aInt == a.count) {
            
            [c addObject:b[bInt]];
            bInt ++;
        }else if (bInt == b.count) {
            
            [c addObject:a[aInt]];
            aInt ++;
        }else {
            
            if (a[aInt].integerValue >= b[bInt].integerValue) {
                
                [c addObject:b[bInt]];
                bInt ++;
            }else {
                [c addObject:a[aInt]];
                aInt ++;
            }
        }
    }
    
    return c;
}

记住算法最重要的一点,永远先处理特殊情况。

    原文作者:Jun_简书
    原文地址: https://www.jianshu.com/p/f196c2ec0b84
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞