일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- UserDefaults
- IOS
- COLOR
- struct
- deadlock
- 비동기
- 동시성
- Algorithm
- 인프런
- 동기화
- 데드락
- SwiftUI
- Linked List
- async
- 상호배제
- @state
- Swift
- 앨런
- Codable
- 알고리즘
- core data
- Apple Developer Academy
- 파일 시스템
- 가상 메모리
- 운영체제
- 오브젝트
- forEach
- 프로세스 스케줄링
- 100 days of SwiftUI
- decode
- Today
- Total
목록분류 전체보기 (258)
기어가더라도 제대로
문제 링크드 리스트와 left, right 인덱스가 주어질 때 Left 인덱스 부터 right 인덱스까지를 뒤집은 Linked List를 반환하라. 뒤집는 다는 접근을 어떻게 할지감이 오지 않아서 오래 걸린 문제 -> 결국 답지를 보았다. 풀이 다양한 포인터가 필요할 것 같았는데, 크게는 p, tail, temp가 필요했다. 그리고 그들 사이에 연결을 뒤섞는 순서도 중요했다. 더미 노드와 P 포인터를 선언함 p 포인터를 left-1까지 당겨옴 p의 다음 포인터를 tail로 선언 left-right의 길이 만큼 a,b,c,d 컴비네이션을 적용 a) p의 다음 노드를 tmp로 지정한다. b) p의 다음 노드로 tail의 다음 노드를 지정한다. c) tail.next.next를 tail.next에 저장한다. ..
문제 설명 Random Pointer가 있는 Linked List가 있는데 이를 완전 복사를 해서 새로운 Linked List로 만들라 이것만 보면 쉬운 문제 같은데 문제는 random 포인터 때문에 어려워졌다. 일반적으로 Linked List에서 Node는 Next 포인터 하나가 다음 노드를 가리키고 있다. 이 문제에서는 Random이라는 포인터가 추가로 주어짐 풀이 총 3단계로 풀이를 함 첫번째 while-loop에서 복사를 한 새로운 Node를 기존 링크드리스트 노드들의 사이에 생성한다. 1-1-2-2-3-3-4-4 random: 1→3, 2→4 두번째 while-loop에서 복사한 노드들의 random 포인터를 복사한 노드로 연결한다. 1-1-2-2-3-3-4-4 random: 1→3, 2→4 c..
SwiftUI는 iPhone, iPad에서 동시에 실행 가능 struct ContentView: View { var body: some View { NavigationView { Text("Select View") .navigationTitle("First") Text("Detail View") .navigationTitle("Second") } } } 이 코드를 아이패드, 14 pro, 14 pro max에서 실행해보면 각기 화면이 다름 iPad - 2단계로 분리되어 보임 위에 좌상단 토글을 누르면 첫번째 뷰가 보이고 안보이는 것을 조절할 수 있음 또 왼쪽 스와이프 액션으로 첫번째 뷰를 열고 닫고 상호작용 가능 iPhone 14 pro - "Detail View" 라는 글자를 확인할 수 없음 두번 째 ..