[swift] 고차 함수를 사용하여 배열의 원소를 정렬하는 방법은 무엇인가요?
  1. sorted(by:) 함수:
    • 배열의 원소들을 주어진 비교 클로저를 기준으로 정렬합니다.
    • 비교 클로저는 다음 형식을 가집니다: (T, T) -> Bool
    • 예를 들어, 정수 배열을 오름차순으로 정렬하려면 다음과 같이 사용할 수 있습니다:

      let numbers = [5, 2, 7, 1, 4]
      let sortedNumbers = numbers.sorted(by: { $0 < $1 })
      print(sortedNumbers) // 출력: [1, 2, 4, 5, 7]
      
  2. sort(by:) 함수:
    • sorted(by:) 함수와 동일한 역할을 수행하지만, 원본 배열을 직접 정렬합니다.
    • 위의 예제에서 sorted(by:) 대신 sort(by:)를 사용하면 됩니다.
  3. sorted() 함수:
    • 배열의 정렬된 복사본을 반환합니다.
    • 기본적으로 오름차순으로 정렬됩니다.
    • 위의 예제와 비슷하게, 다음과 같이 사용할 수 있습니다:

      let numbers = [5, 2, 7, 1, 4]
      let sortedNumbers = numbers.sorted()
      print(sortedNumbers) // 출력: [1, 2, 4, 5, 7]
      
  4. sort() 함수:
    • sorted() 함수와 동일하지만, 원본 배열을 직접 정렬합니다.

이와 같은 고차 함수를 활용하여 배열의 원소를 다양한 방식으로 정렬할 수 있습니다. 자세한 내용은 Swift 공식 문서를 참조하시기 바랍니다.