sys.stdin.readline, 에라토스테네스의 체, collections.Counter 사용법 등을 정리해보았다.
분명 맞는 답이라고 생각했는데, 왜 내 코드는 백준에서 시간 초과가 뜰까? 그건 너가 아직 시간을 지배하는 자가 되지 못했기 때문이지...후훗
훈련소에선 한 사람만 잘못해도 다함께 얼차려를 받죠. 리스트도 마찬가지입니다. 두 변수가 동일 리스트를 가리키면, 한 쪽만 바꿔도 나란히 얻어맞죠.
백준 막 입문했을 때 재귀함수가 뭔지도 모르고 N-Queen 문제를 풀려고 했다가 3시간 넘게 삽질했던 기억이 난다. 다행히 이번 기회에 완전히 이해한 것 같다. 아마도...?
버블/선택/삽입 정렬은 느리다. 마치 거북이 같다. 퀵 정렬은 평균적으로 빠르지만 최악의 경우 느려진다. 음... 토북이라고 하자.
안정적으로 빠른 속도를 보장하는 병합 정렬과 힙 정렬, 제한된 범위의 중복 값을 정렬할 때 효과적인 도수 정렬을 정리해 보았다.
로또 1등에 당첨되고 싶으면 모든 번호 조합을 하나씩 다 사면 됩니다. 아 근데 그러면 60억 손해래요.
이렇게 풀지 마시고 `itertools.permuations`, `itertools.collections` 쓰세요.... ㅠㅠㅠㅠㅠ

스택은 마치 저 인형들마냥 데이터가 쌓여 있는 자료구조입니다. 나중에 삽입한 데이터가 먼저 반환되는 후입선출 구조죠.

'꼬리에 꼬리를 무는 그날 이야기'라는 프로그램이 있죠. 우리는 '꼬리에 꼬리를 무는 연결 리스트'에 대해 알아보도록 합시다.
술자리에서 숫자 맞추기 업다운 게임을 할땐 보통 가운데 숫자부터 불러보죠. 그게 바로 이분 탐색입니다.

수학쌤이 말합니다. “오늘 몇일이지? 24일? 24번, 나와서 문제 풀어봐.” 굳이 학생들을 줄 세워서 한명씩 번호를 확인할 필요는 없죠. 이게 바로 해시 테이블의 원리입니다.

LG트윈스 팬인 저는 경기 예매를 할 때마다 이런 화면을 자주 봅니다. 먼저 접속한 사람이 먼저 티켓팅을 할 수 있는데, 이게 바로 '큐'의 원리죠~

내일 시험인데 친구가 술을 먹자고 하네요? 네… 교수님, 죄송합니다. 전 술을 마시러 갑니다. 우선순위 큐 역시 우선순위가 높은 데이터부터 꺼내는 자료구조입니다.

봉건 시대 땐 왕이 영토를 쪼개 제후들에게 맡겼죠. 그럼 우리도 알고리즘 문제를 쪼개 재귀 함수들에게 맡기면 어떨까요? 그게 바로 분할 정복이랍니다!

한 점에서 시작해서, 나무처럼 갈라져 나가는 자료구조라고 생각하면 됩니다.

그래프의 대표적인 구현 방식인 인접 행렬, 인접 리스트에 대해 알아봅시다.

정글에선 넓고 얕은 인간관계와 좁고 깊은 인간관계 사이에서 고민을 하게 됩니다. 하지만 DFS든 BFS든 모든 노드를 만나듯, 어떻게든 모두랑 친해질 수 있지 않을까요?

크래프톤 정글 캠퍼스에서 캐리비안베이로 가는 제일 빠른 길은?? 최단 경로 알고리즘에 대해 알아봅시다.

"서로" "소"가 서 있네요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

수강신청을 할 때는 선이수 과목을 모두 이수했는지 확인하는 것이 중요해요! 위상 정렬에서도 선행 조건을 지키며 작업의 순서를 결정하게 됩니다.

자동완성 기능과 유사하게 동작하는 트라이와, 실제 데이터베이스에서도 사용되는 B 트리를 알아봅시다람쥐. 🐿️

그리디 알고리즘이라고도 불리는, 매 순간 최선의 선택을 하는 탐욕법에 대해 알아봅시다.

흔히 Dynamic Programming(DP)라고도 부르는 동적 계획법은, 중복되는 하위 문제로 쪼갤 수 있는 문제를 해결할 때 활용합니다.

시간 복잡도, 배열, 정렬, 순열과 조합, 스택, 큐, 해시 테이블, 최소ᆞ최대 힙, 이분 탐색, 분할 정복을 복습해봅시다.

트리, 그래프, 깊이ㆍ너비 우선 탐색, 다익스트라ㆍ플로이드-워셜 알고리즘, 최소 신장 트리, 위상 정렬, 탐욕법, 동적 계획법(DP)을 복습해봅시다. 특히 DP는 할 말이 좀 많습니다.