분류 전체보기
func solution(_ n:Int) -> Int { var result = 0 for i in 0...10{ if n >= Factorial(i){ result = i } } return result } func Factorial(_ num: Int) -> Int { if num < 2 { return num } return Factorial(num-1) * num } 참고 [Swift Algorithm Note] 재귀함수 정리 (feat. Factorial) 대충은 알고 있었지만,, 지금까지는 알고리즘에 대한 정확한 개념 없이 문제를 해결해왔다. 하지만 점차 문제 수준이 높아지면서 알고리즘을 정확히 파악하고 있어햐 한다는 것을 느낌,, 따라서 seolhee2750.tistory.com
Frame과 bounds에 대해 알아보기 전 CGPoint, CGSize, CGRect에 대해 알아야 한다. CGPoint : 2차원 좌표계의 점을 포함하는 Struct CGPoint | Apple Developer Documentation A structure that contains a point in a two-dimensional coordinate system. developer.apple.com CGSize : width와 height의 값 CGSize | Apple Developer Documentation A structure that contains width and height values. developer.apple.com CGRect : 사각형(Rectangle)의 위치와 크기를 ..
메모리 구조 메모리 구조는 Code 영역, Data 영역, Heap 영역, Stack영역으로 구성되어 있음 Code 영역 작성한 코드가 기계어로 저장됨 Compile(컴파일) Time 결정 중간에 코드가 변경되지 않도록 Read-Only 형태로 저장 Data 영역 전역 변수, static 변수 저장 ※ Swift static 키워드는 lazy가 기본 동작 → 해당 값에 접근할 때 메모리에 할당 프로그램 시작과 동시에 할당되고, 프로그램이 종료되어야 메모리 해제됨 실행 도중 변숫값이 변경될 수 있으니 Read-Write로 지정 Heap 영역 malloc / alloc으로 Heap에 메모리 할당할 수 있음 (동적할당) 사용하고 난 후 반드시 메모리 해제해야 함 → 해제하지 않을 경우 memory leak 발..
func solution(_ numbers:[Int], _ k:Int) -> Int { return numbers[(k-1) * 2 % numbers.count] } 출처 [swift] 프로그래머스 - 공던지기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀 muker.tistory.com
func solution(_ num_list:[Int], _ n:Int) -> [[Int]] { var result:[[Int]] = [] var cnt: Int = 0 for i in 0...((num_list.count/n)-1) { result.append((cnt...(cnt+n-1)).map{ num_list[$0] }) cnt += n } return result } 출처 [Swift] 코딩테스트 연습! Lv0. 2차원으로 만들기 /* 2차원으로 만들기 - 정수 배열 num_list와 정수 n이 매개변수로 주어집니다. num_list를 다음 설명과 같이 2차원 배열로 바꿔 return하도록 solution 함수를 완성해주세요. num_list가 [1, 2, 3, 4, 5, 6, 7, 8] 로 ..