LeetCode 배열 칼럼: 88. 두 개의 질서 있 는 배열 (자바 버 전) 을 합 칩 니 다.
설명: nums 1 과 nums 2 를 초기 화 하 는 요소 의 수량 은 각각 m 와 n 입 니 다.nums 1 에 nums 2 의 요 소 를 저장 할 공간 이 충분 하 다 고 가정 할 수 있 습 니 다.
예시:
입력: nums 1 = [1, 2, 3, 0, 0, 0, 0], m = 3, nums 2 = [2, 5, 6], n = 3 출력: [1, 2, 2, 3, 5, 6]
문제 풀이 방향: 데이터 구조 수업 에서 질서 있 는 링크 의 합병 알고리즘 을 배 웠 기 때문에 이 알고리즘 을 참고 하여 먼저 새로운 배열 res 를 만들어 야 합 니 다. 이 동시에 nums 1 과 nums 2 두 배열 을 옮 겨 다 니 며 두 배열 의 작은 요 소 를 res 에 부여 하고 특정한 배열 이 다 옮 겨 다 닐 때 까지 다른 배열 의 나머지 요 소 를 res 에 순서대로 부여 해 야 합 니 다.
복잡 도 분석: 시간 복잡 도: O (m + n);공간 복잡 도: O (m + n)
다음은 AC 코드 를 붙 입 니 다.
class Solution {
public void merge(int[] nums1, int m, int[] nums2, int n) {
int []res = new int[m+n];
int i=0,j=0,cnt=0;
// , res
while(iif(nums1[i]else
res[cnt++] = nums2[j++];
}
// res
if(i>=m)
while(jif(j>=n)
while(i// nums1 , res nums1
for(i=0;i
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.