적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

반응형

분류 전체보기 568

[Swift 알고리즘] 백준 4949 균형잡힌 세상

○ 스택 Silver 4 백준 4949 균형잡힌 세상 종료 조건 "." 이 들어올 때까지 문장을 input 으로 받아서 알파벳은 무시하고 [] () 괄호 짝만 맞추면 되는 문제. ( 혹은 [ 이면 push ] 혹은 ) 이면 확인하고 pop 마지막에 스택 남는거 확인하고 리턴 while true { let input = readLine()! if input == "." { break } else { print(isBalanced(input)) } } func isBalanced(_ input: String) -> String { var stack: [Character] = [] for i in input { switch i { case "(", "[": stack.append(i) case ")": if ..

Algorithm/Baekjoon 2023.03.08

[Swift 알고리즘] 백준 10828 스택

○ 스택 Silver 4 백준 10828 스택 문제 정수를 저장하는 스택을 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 다섯 가지이다. - push X: 정수 X를 스택에 넣는 연산이다. - pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. - size: 스택에 들어있는 정수의 개수를 출력한다. - empty: 스택이 비어있으면 1, 아니면 0을 출력한다. - top: 스택의 가장 위에 있는 정수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. 입력 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩..

Algorithm/Baekjoon 2023.03.07

집무실 왕십리점

취준컴퍼니 3기에 합격(..?)하여 집무실 전지점을 이용해볼 수 있는 특권을 얻게 되었다 히히 로켓펀치 프리미엄 서비스, 실무진 코치진 등 다양한 복지(?) 혜택들이 있지만 iOS 개발하시는 코치님은 없으신 관계로 🥲 가장 기대되는 혜택은 24시간 운영되는 집무실 무제한 회원권..!! 😆😆 집에서 제일 가까운 왕십리점을 먼저 방문해보았따 짱조아~ 나는 햇살이 드는 2층 독립좌석에 자리를 잡고 앉아 간만에 포토부스로 안찍던 세ㄹ카도 몇장 찍어보았다. (햇살을 담아보고싶었뚬) 역시 1인석은 편하고 좋은데 뻘짓도 많이 하게 되는듯(..?) ㅋㅋㅋ 사진찍고 핸드폰으로 에어드롭하려던걸 실수로 다른 사람에게 보내버렸,, 🫣 그렇지만 어쩌겠는가 부끄러움은 온전히 나의 몫인걸,, 어쩔수 없지뭐. 철판 깔아~~ 독립 좌..

2023 Apple 디자인 챌린지 - Part 1: Navigation + Workflow

* 에반젤리스트 Evangelist : 기독교에서 신앙을 전파하는 전도사처럼, IT 분야에서는 자신들의 기술을 시장에 전파시키고 확산시키는 역할을 하는 사람들을 말함 좋은 인터페이스란? 예측 가능성과 안정성 - 튜토리얼이 필요없는 직관적인 설계 명확하고 도움이 되는 정보 자연스럽고 단순한 워크플로우 즐거운 경험 - 앱과 감정적 연결 디자인 챌린지 Part 1 1. 내비게이션 Navigation - 길 찾기 - 멘탈 모델 2. 워크플로우 Workflow - 점진적 공개 - 80/20 규칙 1. 내비게이션 Navigation 길찾기 Wayfinding 어디로 가야할 지 알려주는 정보 제공. 좋은 길 찾기는 다음 질문에 대한 답을 준다 - 내가 어디에 있지? - 어디로 가야하지? - 거기로 가면 무엇을 찾을 ..

[Swift Concurrency] async / await

WWDC 21 - Meet async/await in Swift https://developer.apple.com/videos/play/wwdc2021/10132/ Meet async/await in Swift - WWDC21 - Videos - Apple Developer Swift now supports asynchronous functions — a pattern commonly known as async/await. Discover how the new syntax can make your code... developer.apple.com Concurrency 동시성 : Perform asynchronous and parallel operations. 비동기 및 병렬 작업을 수행 기존의 비동기 작..

[Swift iOS] OperationQueue에 대하여 (+ BlockOperation, AsyncOperation)

OperationQueue 오퍼레이션큐 OperationQueue : A queue that regulates the execution of operations. 오퍼레이션의 실행을 규제하는(?) 대기열 큐 BlockOperation 블락오퍼레이션 BlockOperation : An operation that manages the concurrent execution of one or more blocks. 내부에 block(클로저)을 내장하고 있는 오퍼레이션 클래스 기본 설정은 동기적(sync)이지만, 다른 큐로 보내서 비동기적으로 실행하는 것도 가능 작업이 모두 종료 되었을 때 알려준다는 점에서 디스패치 그룹과 유사하게 동작한다고 볼 수 있다. (기능은 더 많음) 각 block은 디폴트 글로벌 큐에서..

[Swift iOS] GCD와 Operation의 차이

Operation 오퍼레이션 Operation : An abstract class that represents the code and data associated with a single task. 단일 작업과 관련된 코드 및 데이터를 나타내는 추상 클래스 Dispatch (GCD) : 멀티코어 환경에서 디스패치 큐를 활용하여 동시성 프로그래밍을 지원하는 Framework 디스패치큐를 사용하여 비동기 처리 등을 처리하는 Framework Operation : 오퍼레이션 큐를 사용하여 비동기 작업들을 처리하는 Class 내부적으로 GCD를 기반으로 취소, 순서지정, 일시정지 같은 추가적인 기능들을 구현할 수 있다. => 프로젝트 효율성, 적합성을 따져보고 알맞게 사용해야 ex) 아직 실행 전, 대기열에 있..

[iOS GCD] Concurrency Problems 동시성과 관련된 문제 + 해결방법

2개 이상의 쓰레드를 사용하면서, 동일한 메모리 접근 등으로 인해 발생할 수 있는 문제 실행시마다 항상 같은 순서로 발생하는 것이 아니기 때문에 디버그 하기 어렵다. Thread-Safety - Thread-safe : 여러 쓰레드가 동시에 쓰여도 안전하다. - 동시적 처리를 하면서(여러 쓰레드를 사용하면서도) 문제없이 쓰레드를 안전하게 사용하는 것 데이터(객체나 변수 등)에 여러 쓰레드를 사용하여 접근하여도, 한번에 한개의 쓰레드만 접근가능하도록 처리하여 경쟁상황의 문제없이 사용 1. Race Condition 경쟁상황 두 개 이상의 쓰레드가 한 곳의 메모리(저장공간)에 동시에 접근하여 값을 사용하려고 할 때 문제가 발생할 수 있다. ex) 여러 쓰레드에서 동시다발적으로 쓰기 및 읽기를 할 경우 여러 ..

728x90
반응형