두 개의 정렬 된 배열이 있습니다. 추가 메모리를 사용하지 않고 두 배열을 병합해야합니다 (두 번째 배열은 병합을위한 공간이 더 깁니다). 출력은 두 번째 배열을 통해 반환되어야합니다.병합 정렬 된 배열
0
A
답변
7
추가 공간이 두 번째 배열 끝에 있다고 가정하면 배열 끝에서 병합을 시작하기 만하면됩니다. i1
및 i2
두 개의 인덱스를 사용하여 배열의 현재 위치를 가리키고 병합 배열의 현재 위치를 가리키는 인덱스 i
을 사용하십시오.
- 초기화
i
,i1
및
i2
는 각각의 배열의 마지막 항목을 가리 키도록. 으로 반복 (즉
i
를 줄이고 더 큰 값을 보유하는 배열의 인덱스)에a2[i]
a1[i1]
및a2[i2]
의 최대 쓰기 인덱스를 조정한다.
+0
좋은 메모 ... – Exception
관련 문제
- 1. ruby에서 N 개의 정렬 된 배열 병합
- 2. 병합 정렬 : 추가 배열 복사본이 필요합니까?
- 3. 정렬 된 파일을 효율적으로 병합
- 4. Android : 병합 된 커서 정렬
- 5. 트림 정렬 된 배열
- 6. C에서 정렬 된 배열 검색
- 7. 배열 배열 정렬 [] 배열
- 8. 빠른 정렬 및 병합 정렬
- 9. 정렬 배열 (자연 정렬)
- 10. 속도로 배열 병합/조작
- 11. 병렬 병합 정렬
- 12. 추가 메모리가없는 병합 정렬
- 13. 병합 정렬 실행 시간
- 14. 병합 정렬 공간
- 15. 다중 배열을 병합 한 다음 배열 값 개수로 정렬
- 16. 정렬 배열
- 17. 정렬 배열
- 18. 병합 정렬 병합 실행 시간 분석
- 19. 병합 배열 수량 PHP
- 20. 해시 배열 병합
- 21. jquery grep 배열 병합
- 22. 날짜에 PHP 병합 배열
- 23. 다중 배열 병합 PHP
- 24. PHP : 2 다차원 배열 병합
- 25. 병합 된 셀이 포함 된 Excel 테이블 정렬
- 26. 병합 정렬 구현을 문자열 길이로 정렬 - python
- 27. 정렬 다차원 동적으로 생성 된 배열
- 28. 정렬 된 키 접미사가있는 PHP 배열
- 29. 숫자를 기준으로 정렬 배열
- 30. PHP에서 2 차원 배열 병합
나는 앞뒤로 Mergesort를 통과했으며 마지막 데이터는 두 번째 배열의 끝에 생성됩니다.이 경우 두 번째 배열 또는 결과 배열의 앞 부분에 빈 공간이있을 수 있습니다. 이보다 더 좋은 방법이 있니? – kc3
그냥 배열의 점령 영역의 크기를 추가하고, 끝 부분 대신 배열의 해당 위치에서 시작하십시오. 예를 들어 A1에 10 개의 요소와 A2 8 개의 요소가 포함되어 있지만 A2에는 23 개의 요소에 대한 공간이 있다고 가정합니다. 요소 23에서 시작하여 뒤로 작업하는 대신 요소 18에서 시작하여 뒤로 작업하십시오. –
이 링크 http://stackoverflow.com/questions/5958169/how-to-merge-two-sorted-arrays-into-a-sorted-array가 문제를 해결해야합니다. – Exception