java 내장 정렬 총 결

2728 단어
java 내장 정렬 총 결
평소에 일 하 는 과정 에서 자바 의 정렬 알고리즘 을 자주 사용 하지만 체계 적 인 정리 가 거의 없습니다. 오늘 은 간단하게 정리 하 겠 습 니 다.
사실 정렬 과 관련 된 데이터 구 조 는 두 가지 가 있 습 니 다.
  • Array
  • List

  • 이 두 가지 구 조 는 비교적 유사 하 다. 일상적인 개발 의 측면 에서 볼 때 만약 에 우리 가 배열 의 길 이 를 확정 할 수 있다 면 int [] aArray = {1, 2, 3} 을 사용 하 는 것 을 권장 한다.이런 모델 은 속도 가 비교적 빠 르 기 때문에 동적 확장 이 필요 하지 않 기 때문에 시스템 의 비용 도 비교적 적다.
    상기 두 가지 유형 은 시스템 이 모두 정렬 하 는 방법 을 제공 했다. 각각:
  • Arrays.sort()
  • Collections.sort()
  •         List list = new ArrayList<>();
            list.add("a");
            list.add("c");
            list.add("e");
            list.add("b");
            list.add("q");
            Collections.sort(list);
            for (int i = 0; i < list.size(); i++) {
                System.out.print(list.get(i) + "\t");
            }
    
            //============================================
    
            List list2 = new ArrayList<>();
            list2.add(6);
            list2.add(3);
            list2.add(1);
            list2.add(7);
            list2.add(2);
            Collections.sort(list2);
            System.out.println();
            for (int i = 0; i < list.size(); i++) {
                System.out.print(list2.get(i) + "\t");
            }
    
            //============================================
    
            Collections.sort(list2, new Comparator() {
                @Override
                public int compare(Integer o1, Integer o2) {
                    return o2 - o1;
                }
            });
            System.out.println();
            for (int i = 0; i < list.size(); i++) {
                System.out.print(list2.get(i) + "\t");
            }
    
            System.out.println();
    
            //============================================
    
            int[] aArray = {1, 5, 2, 4, 9};
    
            Arrays.sort(aArray);
    
            for (int i = 0; i < aArray.length; i++) {
                System.out.print(aArray[i] + "\t");
            }
    
            System.out.println();
    
            //============================================
    
            Character[] bArray = {'a', 'd', 'c', 'z', 'b'};
            Arrays.sort(bArray, new Comparator() {
                @Override
                public int compare(Character o1, Character o2) {
                    return o1 - o2;
                }
            });
    
            for (int i = 0; i < bArray.length; i++) {
                System.out.print(bArray[i] + "\t");
            }
    
    //     
    a   b   c   e   q
    1   2   3   6   7
    7   6   3   2   1
    1   2   4   5   9
    a   b   c   d   z
    

    이상 의 코드 는 두 가지 방식 을 보 여 주 었 습 니 다. 하 나 는 기본 적 인 방법 으로 정렬 하 는 것 이 고 하 나 는 스스로 정렬 규칙 을 다시 쓰 는 것 입 니 다.

    좋은 웹페이지 즐겨찾기