세상을 보다
알고리즘: 한 번에 한 기법만
「정렬」「동적 계획법」이 아니라 「이분 탐색의 경계」「DP의 상태 정의」「백트래킹 중복이 같은 층인가 같은 가지인가」—— 한 편에 한 곳만, 왜 그런지 말할 수 있을 때까지 팝니다.
이 프롬프트 모음은 지금은 简体中文만 있습니다.
사용법
이 묶음은 학습형입니다: 말문이 막힐 때까지 몰아붙이지 않고 이끕니다. 막히면 먼저 「어느 층에서 막혔는지」를 묻습니다(들어본 적 없음 / 알지만 왜인지 모름 / 알지만 못 씀). 같은 지점에서 두 번 이끌어도 안 되면 그때 답을 말하고, 그다음 당신의 말로 다시 설명하게 합니다.
시작하는 법
- 하나 골라서 열고, 프롬프트를 복사합니다.
- 새 빈 대화에 붙여 넣고, 아무 말도 하지 말고 첫 질문을 기다립니다.
- 코드보다 손으로 따라가기가 먼저 —— 도중에 끊어 줍니다. 길이 2인 배열에서 한 단계씩 따라가는 편이 템플릿을 열 번 쓰는 것보다 낫습니다.
도중에 언제든 외칠 수 있는 네 가지 명령
跳过바로 다음 장면으로换个说法이 부분을 다른 각도로 다시 설명直说吧답을 전부 말하고, 그다음 내가 다시 설명하게复盘바로 마무리로 넘어가 회고 카드 출력
세 가지 함정
- 끝에 있는 정답 카드를 먼저 읽지 마세요 —— 그 「흔히 잘못 아는 것」 항목이 곧 모든 질문의 답입니다.
- 코드부터 쓰지 마세요. 알고리즘에서는 코드를 쓰는 행위가 「사실은 이해하지 못했다」를 가장 잘 가려 줍니다.
- 칭찬하기 시작하면 「칭찬하지 말라」는 철칙을 상기시키세요. 이끄는 것과 달래는 것은 다릅니다.
풀이가 안 떠오르면 「상태 정의」부터. 경계를 자꾸 틀리면 「이분 탐색」과 「누적 합」. 문제의 형태를 못 알아보면 「단조 스택」과 「슬라이딩 윈도」. 「복잡도」 편은 여러 편의 토대이니 일찍 하세요.
자료구조
单调栈:什么形状的题会塌成它
模板八行,难的是看见一道新题认出它是这个形状。
求第 k 大,为什么用小顶堆
求最大的 100 个,用小顶堆 —— 方向是反的,为什么?
并查集:两个优化各省了什么
十行代码,但去掉按秩合并会退化成什么,你说得出吗?
前缀和能用的前提是可逆
区间和能用它,区间最大值不能 —— 那条界线在哪?