Daeng iOS

[프로그래머스 코테 기초 Swift] #3-1 문자열 섞기 본문

알고리즘 & 코딩테스트/프로프래머스

[프로그래머스 코테 기초 Swift] #3-1 문자열 섞기

U_Daeng 2024. 3. 11. 20:10

🗒️ 문제

 

✏️ 내 풀이 

import Foundation

func solution(_ str1:String, _ str2:String) -> String {
    let strArr1 = Array(str1)
    let strArr2 = Array(str2)
    var result = ""
    for i in 0..<str1.count {
        result += String(strArr1[i])
        result += String(strArr2[i])
    }

    return result
}

 

 

🔍 다른 풀이 및 공부

1) 
func solution(_ str1:String, _ str2:String) -> String {
    return zip(str1, str2).map { String($0) + String($1) }.joined()
}

2) 
func solution(_ str1:String, _ str2:String) -> String {
    var result: String = ""
    for (one, two) in zip(str1, str2) {
        result.append(one)
        result.append(two)
    }
    return result
}

3)
func solution(_ str1: String, _ str2: String) -> String { 
	return zip(str1, str2).map { "\($0)\($1)" }.joined() 
}

 

zip과 map을 쓰면 이렇게나 간단해진다..!

 

zip(_:_:)

 

두개의 시퀀스를 zip()으로 튜플 쌍의 시퀀스를 만들 수 있다!!!

활용도가 높을 것 같다


joined() 참고 / map 참고 print() , readLine() 참고