>  기사  >  Java  >  Java의 특정 열에 있는 값을 기준으로 2D 배열 정렬

Java의 특정 열에 있는 값을 기준으로 2D 배열 정렬

WBOY
WBOY앞으로
2023-08-29 21:01:03905검색

배열은 유사한 데이터 유형을 가진 요소 집합을 저장하는 데 사용되는 선형 데이터 구조입니다. 데이터를 순차적으로 저장합니다. 배열을 만든 후에는 크기를 변경할 수 없습니다. 즉, 길이가 고정되어 있습니다.

M x M 순서의 2D 배열이 있다고 가정합니다. 여기서 M은 행과 열의 수입니다. 주어진 배열의 지정된 열을 정렬해야 합니다. 이 기사에서는 주어진 문제에 대한 해결책을 찾으려고 노력할 것입니다.

열 값을 기준으로 2D 배열 정렬

정렬이란 주어진 목록이나 배열의 요소를 오름차순이나 내림차순으로 재배열하는 것을 의미합니다. 다음 시각적 표현을 통해 정렬 내용을 이해해 봅시다 -

예 1

이 2D 배열의 첫 번째 열을 정렬할 때 -

Java의 특정 열에 있는 값을 기준으로 2D 배열 정렬

2차원 배열의 구문

으아악

프로그램에서 위의 구문 중 하나를 사용할 수 있습니다.

Data_Type 대신 int 및 double과 같은 기본 데이터 유형을 제공할 수 있습니다. 행과 열은 원하는 배열 크기입니다.

시술에 앞서 한 가지 더 말씀드리겠습니다.

비교기 인터페이스

Java는 배열과 컬렉션을 자연스러운 순서로 정렬하는 sort()라는 내장 메서드를 제공합니다. Comparator는 요소를 사용자 정의 방식으로 정렬해야 할 때 사용할 수 있는 일반 인터페이스입니다. 기본적으로 정렬 순서를 제어할 수 있습니다. 이 인터페이스는 두 개의 매개변수를 받아들이고 이를 비교하는 'compare()' 메소드를 정의합니다. 두 인수가 같으면 0을 반환하고, 첫 번째 인수가 두 번째 인수보다 크면 양수 값을, 그렇지 않으면 음수 값을 반환합니다.

문법

으아악

알고리즘

  • 1단계 - "Srt" 클래스의 두 매개변수와 함께 "araySort()" 메서드를 정의합니다. 이 방법에서는 Comparator 인터페이스 "comp"의 개체를 만듭니다. 이제 두 행 배열을 모두 매개변수로 사용하는 비교 방법을 정의합니다.

  • 2단계 - 또한 if-else 블록을 채택하여 지정된 열 값을 비교하고 첫 번째 열의 요소가 두 번째 열보다 크면 1을 반환하고 그렇지 않으면 -1을 반환합니다.

  • 3단계 - 이제 “Arrays.sort()” 메소드를 사용하여 배열을 정렬합니다.

  • 4단계 - 두 개의 for 루프를 사용하여 새로 정렬된 배열을 인쇄합니다.

  • 5단계 - 마지막으로 main() 메서드에서 배열을 선언하고 초기화합니다. 계속해서 "Srt" 클래스의 객체를 생성하고 "aray" 및 열 인덱스를 매개변수로 사용하여 "araySort()" 메서드를 호출합니다.

으아악

출력

으아악

결론

2차원 배열은 행과 열로 구성된 배열입니다. 이 글에서는 지정된 열의 값을 기준으로 2차원 배열을 정렬하는 Java 프로그램을 작성했습니다. Comparator 인터페이스의 내장 메소드 "compare()"를 사용하여 배열이나 컬렉션을 정렬하는 방법을 살펴보았습니다.

위 내용은 Java의 특정 열에 있는 값을 기준으로 2D 배열 정렬의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제