질문이 너무 구체적이지 않다는 것을 알고 있습니다. 내가 원하는 것은 일반 병합 정렬을 내부 병합 정렬 (또는 일정한 여분의 공간 오버 헤드가있는 병합 정렬)으로 변환하는 방법을 알려주는 사람입니다. 인터넷에서 찾을 수있는 것은 "너무 복잡합니다"또는 "이 텍스트의 범위를 벗어났습니다"라는 페이지입니다. 추가 공간없이 적절한 위치에 병합하는 유일한 방법은 실제 프로그램으로 축소하기에는 너무 …
휴무 . 이 질문은 더 집중되어야 합니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중할 수 있도록 질문을 업데이트하십시오 . 휴일 2 년 전 . 이 질문을 개선하십시오 이것은 인터뷰에서 나에게 물었고 이것은 내가 제공 한 솔루션입니다. public static int[] merge(int[] a, …
Java 6의 Arrays.sort방법은 기본 배열에 Quicksort를 사용하고 객체 배열에 병합 정렬을 사용합니다. 대부분의 경우 Quicksort가 병합 정렬보다 빠르며 메모리 비용이 적게 든다고 생각합니다. 내 실험은 두 알고리즘이 모두 O (n log (n))이지만이를 지원합니다. 그렇다면 왜 다른 유형에 다른 알고리즘이 사용됩니까?