标签:color 技术 cli img style [] db2 pen 大小
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。
说明:
示例:
输入: nums1 = [1,2,3,0,0,0], m = 3 nums2 = [2,5,6], n = 3 输出: [1,2,2,3,5,6]
思路:归并排序
用一个指针指向数组1,一个指针指向数组2
如果nums1[i]<nums2[j]
就把数组1的扔到ans里面,反之则把2的扔到ans里面
跑完之后,再把剩下的扔到ans里面
1 void merge(int[] nums1, int m, int[] nums2, int n) { 2 int i=0,j=0; 3 int cou=0; 4 int [] ans =new int [m+n]; 5 while(i<m&&j<n) 6 { 7 if(nums1[i]<nums2[j]) 8 { 9 ans[cou++]=nums1[i]; 10 i++; 11 } 12 else { 13 ans[cou++]=nums2[j]; 14 j++; 15 } 16 } 17 if(i!=m) 18 { 19 while(i<m) 20 ans[cou++]=nums1[i++]; 21 } 22 if(j!=n) 23 { 24 while(j<n) 25 ans[cou++]=nums2[j++]; 26 } 27 28 for(i=0;i<nums1.length;i++) 29 nums1[i]=ans[i]; 30 31 }
标签:color 技术 cli img style [] db2 pen 大小
原文地址:https://www.cnblogs.com/tijie/p/9975241.html