자바에서 연결된 목록을 정렬하는 방법

작가: Randy Alexander
창조 날짜: 23 4 월 2021
업데이트 날짜: 27 1 월 2025
Anonim
자바 : 쉽게 텍스트 파일 읽기
동영상: 자바 : 쉽게 텍스트 파일 읽기

콘텐츠

자바에서 링크드 목록을 구성하는 방법. 닫힌 목록은 프로그래밍 세계의 주요 데이터 유형 중 하나입니다. 다음 노드를 가리키는 데이터 및 참조가 포함 된 노드 조직입니다. Java에서 링크 된 목록을 정렬하려면 알고리즘을 순서대로 구현하는 Collections 프레임 워크와 함께 작동하는 목록 클래스가 있습니다.


지침

Java에서 링크 된 목록 구성 (Fotolia.com에서 danimages하여 심문 이미지)

    Java에서 링크 된 목록 정렬

  1. 새 LinkedList 객체를 만들고 LinkedList 변수를 할당하여 링크 된 목록을 선언하십시오. LinkedList는 generic List 클래스에서 가져 오므로 List를 허용하는 모든 메서드는 LinkedList 객체에서도 허용됩니다. ""LinkedList l = 새 LinkedList (); ""

  2. 동일한 유형의 객체 (예 : 정수)를 목록에 추가하십시오. 이들은 모든 종류의 객체가 될 수 있지만 링크 된 목록을 정렬하려면 모두 동일한 유형이어야합니다.

  3. List.addFirst 메서드를 사용하여 목록의 맨 위에 새 객체를 삽입하면 추가하는 모든 객체가 반대 순서가됩니다. 목록의 끝에 추가하려면 List.addLast 메서드를 사용합니다. ""list.addFirst (1); list.addFirst (3); list.addFirst (2); "

  4. iterator를 사용하여 목록을 반복하고 정렬 방법이 무엇을하는지보기 전후에 인쇄하십시오. ""for (Iterator i = list.iterator (); i.hasNext ();) {System.out.println (i.next ());} "

    기본 및 사용자 지정 비교자를 사용하여 정렬

  1. 목록을 기본 비교 자로 정렬하십시오. Comparator는 두 객체를 비교하는 객체입니다. 기본 비교 자 객체는 더 작은 연산자를 사용하므로 목록은 오름차순으로 정렬됩니다. 목록을 정렬하려면 정적 Collections.sort 메서드를 사용합니다. ""Collections.sort (목록); ""


  2. y) {return -1; "> 비교 인터페이스를 구현하는 클래스를 작성하고이를 순서 인수로 인스턴스에 전달하여 사용자 정의 비교 자로 목록을 정렬하십시오. 비교자를 구현하는 클래스는 단순한 "공용 클래스 GreaterThan은 Comparator를 구현합니다. if (x == y) {return 0;} else {return 1;}}}"

  3. GreaterThan의 새 인스턴스를 두 번째 인수로 전달하여 Collections.sort에 대한 호출을 사용합니다. 큰 개체는 다른 개체보다 앞에 있으므로 목록은 오름차순이 아닌 내림차순으로 정렬됩니다. 또는 입력 한 사용자 지정 클래스에서 개체 목록을 정렬하는 경우이 클래스는 별도의 Comparator 클래스를 사용하는 대신 Comparable 인터페이스를 구현할 수 있습니다. ""Collections.sort (list, new GreaterThan ()); ""

어떻게

  • 회로 및 List.size () 메서드에서 반복 할 정수를 사용하는 것이 문제입니다. 닫힌리스트를 반복하는 것은 값 비싼 계산 작업입니다. 모든 명령에서와 같이 인덱스 연산자 (예 : l [2])를 사용하는 경우 Java는 인덱스 2에 도달 할 때까지 목록을 반복해야합니다. 작은 목록의 경우 이는 큰 것이지만, 인덱스 연산자를 사용하여 많은 리소스가 필요한 무언가로 바뀝니다.
  • LinkedList는 동일한 인터페이스를 구현하므로 List 객체가 어떻게 구현 되더라도 상관 없습니다.
  • 비교 메소드는 arg0가 arg1보다 먼저 정렬되면 -1로, 똑같이 정렬되면 0으로, arg0보다 앞에 arg1이 정렬되면 1로 반환됩니다.

공지 사항

  • iterator 객체는 목록의 각 노드가 한 번만 방문하도록합니다. 필요없이 우리를 방문하면 프로그램이 오작동하는 지점까지 데이터 구조를 남용 할 수 있으므로 기억해야 할 중요한 사항입니다.

일반적으로 바지가 짧아지면 끝 부분에 장식 막대가 없어 지므로 대개 쉽게 알 수 있습니다. 프렌치 바는 원래 바를 유지하도록 길이를 제거하여이를 방지합니다. 또한 바지를자를 필요가 없기 때문에 원 래의 길이를 원하거나 너무 짧은 경우 이음새를 제거 할 수 있습니다. 모든 바지는 프렌치 바를 사용하여 짧아 질 수 있습니다. (폴카 도트 RF / 폴카 도트 /...

fusidic acid로 여드름 치료

Peter Berry

1 월 2025

여드름에 맞서 싸우고 있다면, 당신은 치료의 여러 형태와 무엇을 사용해야하는지 궁금해 할 것입니다. 여드름 치료법 중 하나는 푸시 딘산 (fuidic acid)을 사용하는 것입니다. 여드름 치료에 Fuidic Acid 사용 Fotolia.com에서 캐시 번즈 여드름 2 이미지와 십대 소녀) 푸시 딕산은 피부 감염 치료 용 국소 연고 또는 크림입니다. 여드름...

우리의 선택