라이브러리

[PHP] DsDeque::sorted - 정렬된 복사본을 반환합니다.




PHP 에서 DsDeque::sorted는 Deque 클래스의 메서드 중 하나로, Deque의 요소를 정렬하는 데 사용됩니다. Deque는 데이터 구조 중 하나로, 양쪽 끝에서 데이터를 추가/삭제할 수 있는 구조입니다.

DsDeque::sorted는 Deque의 요소를 정렬하여 새로운 Deque 객체를 반환합니다. 정렬은 기본적으로 오름차순으로 수행되며, 정렬 기준은 요소의 값을 기준으로 합니다.

예제


#hostingforum.kr
php

use Deque;



$deque = new Deque([3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]);



$sortedDeque = $deque->sorted();



print_r($sortedDeque);



위 예제에서, Deque 객체에 저장된 요소는 3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5의 순서로 저장되어 있습니다. Deque::sorted() 메서드를 호출하여 정렬된 Deque 객체를 생성한 후, print_r() 함수를 사용하여 정렬된 Deque 객체의 요소를 출력합니다.

출력 결과는 다음과 같습니다.

#hostingforum.kr
php

Deque Object

(

    [elements] => Array

        (

            [0] => 1

            [1] => 1

            [2] => 2

            [3] => 3

            [4] => 3

            [5] => 4

            [6] => 5

            [7] => 5

            [8] => 5

            [9] => 6

            [10] => 9

        )



)



위 결과에서, Deque::sorted() 메서드를 호출하여 정렬된 Deque 객체를 생성한 후, print_r() 함수를 사용하여 정렬된 Deque 객체의 요소를 출력한 결과입니다.

정렬 기준


DsDeque::sorted는 기본적으로 오름차순으로 정렬합니다. 그러나 정렬 기준을 변경하도록 설정할 수도 있습니다. 예를 들어, 내림차순으로 정렬하려면, sort() 함수의 두 번째 인자에 SORT_DESC를 지정하면 됩니다.

#hostingforum.kr
php

use Deque;



$deque = new Deque([3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]);



$sortedDeque = $deque->sorted(SORT_DESC);



print_r($sortedDeque);



위 예제에서, Deque::sorted() 메서드를 호출하여 내림차순으로 정렬된 Deque 객체를 생성한 후, print_r() 함수를 사용하여 정렬된 Deque 객체의 요소를 출력합니다.

출력 결과는 다음과 같습니다.

#hostingforum.kr
php

Deque Object

(

    [elements] => Array

        (

            [0] => 9

            [1] => 6

            [2] => 5

            [3] => 5

            [4] => 5

            [5] => 4

            [6] => 3

            [7] => 3

            [8] => 2

            [9] => 1

            [10] => 1

        )



)



위 결과에서, Deque::sorted() 메서드를 호출하여 내림차순으로 정렬된 Deque 객체를 생성한 후, print_r() 함수를 사용하여 정렬된 Deque 객체의 요소를 출력한 결과입니다.

정렬에 사용되는 알고리즘


DsDeque::sorted는 기본적으로 퀵 정렬(Qsort) 알고리즘을 사용합니다. 퀵 정렬은 평균 시간 복잡도가 O(n log n)인 알고리즘으로, 데이터의 크기가 큰 경우에 효율적인 알고리즘입니다.

그러나, 퀵 정렬은 최악의 경우 시간 복잡도가 O(n^2)인 경우가 있습니다. 따라서, 데이터의 크기가 작은 경우에는 다른 알고리즘을 사용하는 것이 더 효율적일 수 있습니다.

참고


- PHP 공식 문서: [Deque](https://www.php.net/manual/kr/class.deque.php)
- PHP 공식 문서: [Deque::sorted](https://www.php.net/manual/kr/deque.sorted.php)
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 604 페이지

검색

게시물 검색