안녕하세요 Pingu 입니다.🐧 Swift에는 Queue 자료구조가 따로 없어서 직접 만들어야합니다.😂 참고로 Queue는 FIFO(First In First Out)의 구조를 갖는 자료구조입니다. 매번 만드는게 귀찮아서 이렇게 따로 글을 남기려고합니다. Queue를 만드는 방법에는 다양한 방법이 있지만 이번 글에서는 간단하게 배열 2개로 만든 Queue를 만들었어요. Swift에서는 배열을 뒤집는 reversed() 메서드의 시간복잡도가 O(1) 이므로 Queue와 같은 성능을 낼 수 있다고 봅니다. Queue의 가장 기본적인 기능들만 구현했습니다. 감사합니다. // Mady By Pingu class Queue { var enqueue: [T] var dequeue: [T] = [] var count..
안녕하세요! Ick입니다. 오늘은 가중치가 음수가 아닌 그래프에서 하나의 노드로부터 다른 노드들까지의 최단거리를 알 수 있는 다익스트라 알고리즘에 대해 알아보려고합니다. 다익스트라 알고리즘을 그냥 있는 그대로 나타내는 방법과 우선순위 큐를 사용하는 방법이 있는데요... 저는 우선순위 큐를 사용한 다익스트라 알고리즘을 이해하는데 정말 오래 걸렸습니다.ㅠ,ㅠ 그래서 다신 까먹지 않기 위해 글을 써보려고 합니다! 다익스트라 알고리즘 - Dijkstra 우선 다익스트라 알고리즘은 간선의 음수인 가중치가 없는 그래프에서만 사용할 수 있습니다. 여기서 방향 그래프, 무방향 그래프는 상관이 없습니다. 또한 하나의 노드에서 다른 모든 노드의 최단거리를 구하는 알고리즘이란 것을 기억해야 합니다!! 위의 그래프로 다익스트..
안녕하세요 Ick입니다! 이번 글에서는 iOS에서 동시성 프로그래밍에 사용되는 Dispatch Queue에 대해 알아보려고 합니다. 실제로 사용하는 방법은 여기를 참고해주세요! 참고한 문서는 언제나 그렇듯 공식문서입니다. Apple Developer Document - Dispatch Queue Dispatch Queues Grand Central Dispatch(GCD) 디스패치 큐는 작업 수행을 위한 강력한 도구이다. 디스패치 큐를 사용하면 호출자에 대해 비동기적 또는 동기적으로 코드 블록을 실행할 수 있다. 디스패치 큐를 사용하면 별도의 스레드에서 사용한 모든 작업을 수행할 수 있다. 디스패치 큐는 사용하기 쉬우며 스레드 코드보다 작업을 실행하는데 훨씬 효율적이라는 장점이 있다. 이번 글에서는 디스..
문제 링크 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 문제 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. ..
- Total
- Today
- Yesterday
- 동시성
- 자료구조
- 문법
- operator
- mac
- operating
- System
- 백준
- 아이폰
- 스위프트
- Publisher
- 코딩테스트
- document
- Swift
- 테이블뷰
- Combine
- OSTEP
- pattern
- DP
- 알고리즘
- Xcode
- IOS
- dfs
- BFS
- OS
- 코테
- design
- 프로그래밍
- Apple
- 앱개발
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |