저는 초심자이고 Java 기술을 강화하기 위해 다음과 같은 Java 연습 문제를 해결하려고합니다. 여기에 우리의 제안 16주 코스 일정에 따라 질문 ...Java에서 검색 및 정렬
이며,이 프로그램 프로젝트 그것은 최종 학년의 8 % 가치가 더 이상 주 (13)의 월요일 이상 완료되지해야 . 작업 제출에 대한 자세한 내용은 홈 페이지에있는 할당 지침 문서를 참조하십시오. 전체 코스 평가 정보는 코스 가이드에 나와 있습니다.
- 셸 정렬은 버블 정렬의 변형입니다. 인접한 값을 비교하는 대신 쉘 정렬은 이진 탐색의 개념을 적용하여 스왑이 수행되기 전에 값이 비교되는 '갭'을 확인합니다. 첫 번째 패스에서 간격은 배열 크기의 절반입니다. 이후의 각 패스에 대해 갭 크기가 절반으로 줄어 듭니다. 최종 패스의 경우 갭 크기는 1이므로 버블 정렬과 동일하게 이됩니다. 패스는 스왑이 발생하지 않을 때까지 계속됩니다. 다음 첫 번째 패스를 나타내는 제 18 (p.681)에서 거품 정렬 예에 따라 값들의 동일한 세트이다 :
9 6 8 12 3 1 7 - 어레이의 크기가 7, 이렇게 간극 3
6 9 8 12 3 1 7 것 -^---------^9, 12, 위해서는 아직 더 을 없다
6 9 8 12 3 1 7 - 6과 3은 순서가 맞지 않으므로 교환하십시오 ^ ---------^
9 3 8 12 6 1 7 - 8 및 1 순서가 맞지 않으므로 ^ ---------^
9 3 1 12 6 8 7-12 및 7은 순서가 맞지 않으므로 ^ ------^
9 3 8 7 6 1 12 - 나는 누군가가 나에게 직접 코드를주고 싶지 않지만 방법에 대한 의견을 부탁드립니다 1
패스의 끝 질문을 시작하기에 어려움을 겪고 있습니다. 나는 초심자이므로 진보 된 방법을 알고 있다는 것을 명심하십시오! 시간에 대한
덕분에
질문에 표시된 첫 번째 단계를 구현하는 코드의 일부를 작성할 수 있습니까? – rcgldr
[StackOverflow의 "여기에 대한 주제는 무엇입니까?"] (http://stackoverflow.com/help/on-topic)에서 포인트 3을 확인하십시오. 문제를 해결하기 위해 지금까지 해 온 작업의 요약을 포함시켜야합니다. –