• 오름 차순/ 내림 차순

    // 오름 차순 정렬
    [].sorted()
    [].sort() // 원본 배열 변형
    
    // 내림 차순 정렬
    [].sorted { $0 > $1 }
    
  • stride

    • 일정 구간의 [] 생성 함수
    stride(from:to:by:) // 종료 값 미포함
    stride(from:through:by:) // 종료 값 포함
    
  • 소수 판별

    func isPrime(_ number: Int) -> Bool {
        guard number > 1 else { return false }      // 1 이하는 소수가 아님
        if number == 2 { return true }             // 2는 소수
        if number % 2 == 0 { return false }        // 짝수는 소수가 아님
        
        // 소수가 아닐 경우, n = a × b 형태로 치환 가능
        // a,b중 반드시 1개의 수는 sqrt(n) 보다 작음
        // 소수가 아니라면, 반드시 제곱근 보다 작은 약수가 존재
        let sqrtNum = Int(sqrt(Double(number)))
        return stride(from: 3, through: sqrtNum, by: 2).allSatisfy { number % $0 != 0 }
    }
    
  • 문자열 → 문자열 배열로 변형

    // 문자열을 문자열 배열로 변형
    // char로 변환 map
    string.map { String($0) }
    
  • 전체 합

    numbers.reduce(0, +) //numbers: [Int]
    
  • 딕셔너리

    var dic = [1: 0, 2: 0, 3: 0]
    
    // value 배열
    dic.values
    // key 배열
    dic.keys                
    // value 가져오기
    dic[key]
    // value 제거
    dic.removeValue(for: key)
    
    // (key, value) 순회
    for (key, value) in dic {
        print("\\(key): \\(value)")
    }
    
    
  • 최대, 최소

    // Comparable 프로토콜 준수 최대, 최소 값
    arr.max() // arr에서 최대
    max(value1, value2) // 두 값중 큰 값