전체 글

Coding Test/정리

[python] functools.cmp_to_key(func)

functools — Higher-order functions and operations on callable objects — Python 3.10.2 documentation docs.python.org functools.cmp_to_key(func) Transform an old-style comparison function to a key function. Used with tools that accept key functions (such as sorted(), min(), max(), heapq.nlargest(), heapq.nsmallest(), itertools.groupby()). This function is primarily used as a transition tool for pr..

Coding Test/정리

[python] Dictionary, Counter

Dictionary는 Hash Table로 구성되어 있는데, 이는 상수 시간으로 접근이 가능하다. Counter의 연산. Counter는 Dictionary의 subclass이다. >>> c = Counter(a=3, b=1) >>> d = Counter(a=1, b=2) >>> c + d # add two counters together: c[x] + d[x] Counter({'a': 4, 'b': 3}) >>> c - d # subtract (keeping only positive counts) Counter({'a': 2}) >>> c & d # intersection: min(c[x], d[x]) Counter({'a': 1, 'b': 1}) >>> c | d # union: max(c[x], d..

Development/Swift

[Swift] Closure

RxSwift를 공부하면서 Closure가 다시 등장했다. 들어본 개념이고, 제대로 파보진 않았어서 겸사겸사 정리. Closure는 Swift의 함수형 프로그래밍 패러다임을 접할 때 꼭 알아야 할 개념 중 하나이다. Closure는 일정 기능을 하는 코드를 하나의 블록으로 모아놓은 것을 의미한다. Swift의 Closure는 C언어나 Objective-C의 blocks 이나 다른 프로그래밍 언어의 lambdas와 비슷하다. (함수와 비슷하다고 볼 수 있는데, 사실 함수는 Closure의 한 형태라고 볼 수 있다.) Closures are self-contained blocks of functionality that can be passed around and used in your code. Closur..

Coding Test/문제 풀이

[문제 풀이] 큰 수 만들기

코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 해결 과정 처음에는 효율성 안따지고 곧대로 풀었다가 테스트 케이스 3개만 맞는 문제 발생. ㅋㅋ 역시 전체 다 따지는건 아니었다. Greedy에 포함되어 있는 문제이기도 했으니. 예전에 봤던 Greedy 여기서 어떻게 쓰인다는 건지 감이 안와서 풀이 참고했더니 처음엔 띠용했는데 이해해보니 이해 되는 원리 였다. 해결 과정은 다음과 같다. solution(number, k) number의 처음부터 for문을 돌면서 stack에 추가한다. 단, 추가하기 전에는 k가 0보다 커야하고 (숫자를 제외할 기회가 남아있어야 하고) stack이 비어있지 않고, stack의 맨 마지막원소가 현재 보고 있는 숫자보다 작으면 stack에서 제외해야 한다. (..

기록/기록

[책] 오늘부터 개발자

보호되어 있는 글입니다.

EUNJI HA
Day by Day