当前位置: 首页 > >

[leetcode-88]Merge Sorted Array(C语言)

发布时间:

问题描述:
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.


Note:
You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional elements from nums2. The number of elements initialized in nums1 and nums2 are m and n respectively.


代码如下:0ms


void merge(int* nums1, int m, int* nums2, int n) {
int *tmp = (int *)malloc(sizeof(int)*(m+n));
int nums1Index=0,nums2Index=0,tmpIndex = 0;

while(nums1Index if(nums1[nums1Index] tmp[tmpIndex++] = nums1[nums1Index++];
}else{
tmp[tmpIndex++] = nums2[nums2Index++];
}
}
int i;
if(nums1Index==m){
for(i = nums2Index;i tmp[tmpIndex++] = nums2[i];
}
else if(nums2Index == n){
for(i = nums1Index;i tmp[tmpIndex++] = nums1[i];
}
for(i = 0;i nums1[i] = tmp[i];

free(tmp);
}



友情链接: