[iOS] 뷰컨트롤러 생명주기(ViewController Life-Cycle)
2021. 10. 13. 16:20
iOS
ViewController Life-Cycle init 스토리보드를 통해 뷰 컨트롤러를 생성할 경우 뷰 컨트롤러의 객체가 생성될 때 초기화 작업을 하는 메서드 공식문서에서는 self.init() 같은 방법으로 직접 호출하면 안 된다고 명시하고 있다. 추가적으로 뷰의 추가적인 초기화는 viewDidLoad() 메서드에서 수행하라고 한다. 오버 라이딩은 가능하다. loadView 뷰 컨트롤러가 자신의 뷰, 그러니까 흔히 self.view처럼 접근하는 그 뷰 컨트롤러의 메인 뷰를 로드할 때 호출되는 메서드이다. 즉, 그 메인뷰를 생성하려고 호출하는 메서드이다. 그래서 이 메서드 안에서 새로운 뷰를 만들어서 반환해줘도 된다. 하나 스토리보드를 쓴다면 어차피 스토리보드에 있는 뷰를 가져와 사용하기 때문에 굳이 필..
[Swift] 캐시 | 프로그래머스
2021. 10. 7. 10:13
Algorithm
https://programmers.co.kr/learn/courses/30/lessons/17680 Int { if cacheSize == 0 { return cities.count * 5 } var lru: [String] = [] var answer = 0 for city in cities.map{$0.uppercased()} { if(lru.contains(city)) { lru.removeAll(where: {$0 == city}) lru.append(city) answer += 1 } else { if(lru.count == cacheSize){ lru.removeFirst() } lru.append(city) answer += 5 } } return answer }
[Swift] 로또의 최고 순위와 최저 순위 | 프로그래머스
2021. 10. 6. 17:40
Algorithm
https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 문제 설명 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호가 일치 3 4개 번호가 일치 4 3개 번호가 일치 5 2개 번호가 일치 6(낙첨) 그 외 로또를 구..
[Swift] K번째 수 | 프로그래머스
2021. 10. 6. 11:29
Algorithm
https://programmers.co.k 9 분 소요r /learn/courses/30/lessons/42748?language=swift 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5..