전체 글
[SWIFT] 고차함수 Map
Map(변형) map은 데이터를 변형하고자 할 때 사용된다. 기존 데이터를 변형하여 새로운 컨테이너를 만드는데, 기존 데이터는 변형되지 않는다. 특히 map은 기존의 for-in구문과 큰 차이가 없지만, map 사용시 다음과 같은 이점이 있다. - 코드의 간결성 - 재사용성 용이 - 컴파일러 최적화 성능 array.map(transform: T throws -> T) 사용 예) //숫자 배열을 받아와서 2배의 배열을 리턴하는 함수 func multiple(_ numbers: [Int) -> [Int]{ return numbers.map(){$0 * 2} }
[SWIFT] 배열 두배 만들기
정수 배열 numbers가 매개변수로 주어집니다. numbers의 각 원소에 두배한 원소를 가진 배열을 return하도록 solution 함수를 완성해주세요. 접근법 swift의 고차함수 map(변형)을 이용한다. map은 데이터를 변경하고자 할 때 사용된다. 기존 데이터를 변형하여 새로운 컨테이너를 만드는데, 기존 데이터는 변형되지 않는다. 특히 map은 기존의 for-in구문과 큰 차이가 없지만 map사용시 다음과 같은 이점이 있다. - 코드의 간결성 -재사용 용이 - 컴파일러 최적화 성능 좋음 import Foundation func solution(_ numbers: [Int]) -> [Int]{ return numbers.map(){$0 * 2} }
[SWIFT] 분수의 덧셈
첫 번째 분수의 분자와 분모를 뜻하는 denum1, num1, 두 번째 분수의 분자와 분모를 뜻하는 denum2, num2가 매개변수로 주어집니다. 두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요. 입출력 예 접근법 - 분모들의 곱을 분모로하는 최대의 분모와 분자를 찾아서 최대공약수로 나눈다. 모든 수의 최대공약수는 1부터 시작하며 그 위로 있을수도, 없을수도 있다. func solution(_ denum1: Int, _ num1: Int, _ denum2: Int, _ num2: Int) -> [Int]{ //최대로 나오는 분자 let maxdenum = num1 * denum2 + num2 * denum1 //최..
알고리즘 - 유클리드 호제법(Euclidean- Algorithm)
유클리드 호제법 예를 들어 A와 B의 최대 공약수 흔히 GCD라고 부르는 최대공약수를 구하는데, 이럴 때 만약 A>B라면 A와 B의 최대공약수는 A를 B로 나눈 나머지를 R이라고 할 경우 A와 B사이의 최대 공약수는 B와 R사이의 최대 공약수와 똑같다. 최대 공약수 문제가 나왔을 때 흔히 A = aG, B = bG (G = 최대공약수) 최대 공약수라는 이름을 유지하기 위해서는 더이상의 공약수가 없어야 하기 때문에 여기서 a와 b는 서로소다. 이들의 최대 공약수가 G니까 정말로 A를 B로나눈 나머지가 r이였을 때, b와 r과의 최대공약수도 G가 되는지만 확인하면 된다. A를 예를들어 B로 나누었으면 몫이 있다. 그 몫을 우리는 q라고 해본다. 이럴 경우 A = q*B+r이 된다. A = a * G다 라고 ..
[SWIFT] 숫자 비교하기
정수 num1과 num2가 매개변수로 주어집니다. 두 수가 같으면 1 다르면 -1을 return 하도록 solution함수를 완성해주세요 import Foundation func solution(_ num1:Int, _ num2: Int) -> Int{ var result = num1 == num2 ? 1 : -1 return result }
[C] 두 수의 나눗셈
정수 num1과 num2가 매개변수로 주어질 때, num1을 num2로 나눈 값에 1000을 곱한 후 정수 부분을 return 하도록 solution함수를 완성해주세요. #include #include int solution(int num1, int num2){ int answer = (double)num1 / num2 * 1000; return answer; }
[SWIFT] 두 수의 곱
정수 num1, num2가 매개변수 주어집니다. num1과 num2를 곱한 값을 return 하도록 solution 함수를 완성해주세요. import Foundation func solution(_ num1:Int, _ num2:Int) -> Int { return num1 * num2 }
[SWIFT] 두 수의 합
정수 num1과 num2가 주어질 때, num1과 num2의 합을 return하도록 solution함수를 완성해주세요 import Foundation func solution(_ num1: Int, _ num2: Int) -> Int{ return num1 + num2 }
[SWIFT] 두 수의 차
정수 num1과 num2가 주어질 때, num1에서 num2를 뺀 값을 return하도록 solution함수를 완성해주세요 improt Foundation func solution(_ num1: Int, _ num2: Int) -> Int{ return num1 - num2 }
[SWIFT] 몫 구하기
정수 num1, num2가 매개변수로 주어질 때, num1을 num2로 나눈 몫을 return하도록 solution 함수를 완성해주세요 import foundation func solution(_ num1: Int, _ num2: Int) -> Int{ return num1 / num2 }