본문 바로가기

전체 글

(39)
[TIL] 24.03.27 WED #Morning Algorithm 프로그래머스 바탕화면 정리 - 해결 - 1시간 - String Array를 String.element 하나씩 탐색 for (i, str) in array.enumerated() { for (j, element) in str.enumerated() { // element == array[i][j] } } - 최대 최소를 저장할 땐 min/max(저장값, 비교값)를 사용해보자 #AutoLayout 세션 - Hugging(default: 251) - 어느 한쪽이 커져야 할까? - 동적으로 크기나 위치를 설정할 때, 의존하는 것과 의존당하는 것중 하나의 Intrinsic Size 동적으로 설정하게 됨 -> 이 때, Hugging Priority가 높은 쪽의 Intrinsic S..
[TIL] 24.03.26 TUE #Morning Algorithm 프로그래머스 달리기 경주 - 해결 - 35분 - 버블로 해결하려 했지만 시간초과.. index를 가져오기 위해 탐색하는 시간을 줄이기 위해 Dictionary로 순서 표를 만듦 - 다른사람의 풀이를 보며 swapAt()함수를 사용하는 방식도 구현해봄 - 생각해보니 Array에 index를 통한 접근은 O(1)이라 dictionary가 하나만 있어도 되었다.. #객사오 - 객체지향을 클래스를 사용하는 것 뿐만은 아니다 - 객체는 자율성과 협력성을 지녀야한다 - 객체는 역할(책임들의 집합)을 가지고 있으며 메세지를 주고받으며 협력하며 시스템을 구성한다 - 객체는 요청(받은 메세지)를 처리하는 작업을 자율적으로 선택한다(같은 요청에 다르게 응답할 수 있다(다형성)) - 자율적..
[TIL] 24.03.25-MON #Morning Algorithm -프로그래머스 개인정보 유효 수집구간 - 해결 - 31분 - 구분자 배열로 " ", "."을 한번에 분리하려 했지만 실패해서 split 함수를 반복해서 구현 - split과 components의 차이? #객사오 - 객체들은 역할을 가지고 책임을 가지고 서로 협력한다 - 자율적인 객체들의 공동체 == 시스템, 상태와 행위를 가지며 스스로 책임지는 객체가 자율적인 객체 - 역할: 책임의 집합 - 객체는 메서드를 자율적으로 선택
[TIL] 24.03.22 #Morning Algorithm 햄버거 만들기 - 해결 - 1시간 - replacingOccurrences(of:, with:)를 사용해 해당 문자열을 공백으로 만드는 작업을 반복해 해결하려함 - 한번의 loop에서 여러개의 문자열을 치환했을경우 최종 count가 달라짐 - Stack을 사용해 stack의 위에서 4개만 추출해 해당 문자열과 비교후 같다면 제거하는 방식으로 해결 알고 갈점 removeLast(n: Int) - n 개수 만큼 뒤에서 삭제 for (index, element) in arr.enumerated() {} - 인덱싱 prefix(n), suffix(n) - 앞, 뒤에서 n개 만큼의 열 #UISwitchControl in UITableViewCell - 셀에 추가하는 것이 아니라 ..
[TIL] 24.03.21 #Morning Algorithm - 프로그래머스 둘만의 암호 - 해결 - 28분 - String 맵핑함수에서 "Generic parameter 'T' could not be inferred" 에러 - for문으로 돌면서 해결 - StringElemnet와 Character string.map으로 접근할때 조심 # Closure 의 캡처 - 외부 변수를 사용할 때 외부 context가 종료 되더라도 사용중인 변수는 계속 사용하기 위해서 캡처함 - reference type으로 캡처함(arc count 1 증가 시킴) - heap 영역에 closure 인스턴스에 해당 변수의 주소값으로 접근하며 클로저가 실제로 실행될 때 접근 - 캡처 이후, 클로저 실행전 값이 바뀌면 참조된 주소값으로 접근하기 때문에 값이..
[TIL] 24.03.20 #Morning Algorithm 프로그래머스 대충만든 자판 - 해결 - 14분 - 역시 Dictionary를 사용하는 reduce 구문 사용을 고민, index 추가를 위해 for문으로 구현 - iterator를 String 자체인덱스 elemen로 사용 # # SwiftUI - List에 동적데이터 바인딩 - 스유가 미래다
[TIL] 24.03.19 # Morning Algorithm 프로그래머스 문자열나누기 - 해결 - 16분 소요 - Dictionary를 사용해 문자열의 Character 수를 카운팅하는 구문(아래코드)을 사용할법한 문제같았지만 로직이 떠오르지 않아 그리디로 구현 let letterCount = letters.reduce(into: [:]) {counts, letter in counts[ letter, default: 0 ] += 1 } - String또한 iteratable하다는 점을 잊었다. 습관처럼 for문과 배열이 나오다보니 불필요한 변수를 만들었다.. #Git 특강 - CLI 명령어 몇가지 공부