| comments | edit_url |
|---|---|
true |
本书精选国内外åä¼é«˜é¢‘é¢è¯•题并深度拓展,系统地总结了程åºå‘˜é¢è¯•ä¸å¿…备的数æ®ç»“构与算法知识,并以é¢è¯•者åŠé¢è¯•官的åŒå‘视角剖æžè€ƒç‚¹ä¸Žè§£é¢˜æ€è·¯ï¼Œé€‚åˆæ‰€æœ‰æ£åœ¨å‡†å¤‡é¢è¯•的程åºå‘˜é˜…读。
列表所有题解å‡ç”± å¼€æºç¤¾åŒº Doocs 贡献者æä¾›ï¼Œæ£åœ¨å®Œå–„ä¸ï¼Œæ¬¢è¿Žè´¡çŒ®ä½ 的题解ï¼
快速æœç´¢é¢˜å·ã€é¢˜è§£ã€æ ‡ç¾ç‰ï¼Œè¯·å–„用 Control + F(或者 Command + F)。
| é¢˜å· | 题解 | æ ‡ç¾ | 难度 | 备注 |
|---|---|---|---|---|
| 001 | 整数除法 | æ•°å¦ |
ç®€å• | |
| 002 | äºŒè¿›åˆ¶åŠ æ³• | ä½è¿ç®—,æ•°å¦,å—符串,模拟 |
ç®€å• | |
| 003 | å‰ n 个数å—äºŒè¿›åˆ¶ä¸ 1 的个数 | ä½è¿ç®—,动æ€è§„划 |
ç®€å• | |
| 004 | åªå‡ºçŽ°ä¸€æ¬¡çš„æ•°å— | ä½è¿ç®—,数组 |
ä¸ç‰ | |
| 005 | å•è¯é•¿åº¦çš„æœ€å¤§ä¹˜ç§¯ | ä½è¿ç®—,数组,å—符串 |
ä¸ç‰ | |
| 006 | æŽ’åºæ•°ç»„ä¸ä¸¤ä¸ªæ•°å—之和 | 数组,åŒæŒ‡é’ˆ,二分查找 |
ç®€å• | |
| 007 | 数组ä¸å’Œä¸º 0 的三个数 | 数组,åŒæŒ‡é’ˆ,æŽ’åº |
ä¸ç‰ | |
| 008 | 和大于ç‰äºŽ target 的最çŸå数组 | 数组,二分查找,å‰ç¼€å’Œ,æ»‘åŠ¨çª—å£ |
ä¸ç‰ | |
| 009 | 乘积å°äºŽ K çš„åæ•°ç»„ | 数组,æ»‘åŠ¨çª—å£ |
ä¸ç‰ | |
| 010 | 和为 k çš„åæ•°ç»„ | 数组,哈希表,å‰ç¼€å’Œ |
ä¸ç‰ | |
| 011 | 0 å’Œ 1 个数相åŒçš„åæ•°ç»„ | 数组,哈希表,å‰ç¼€å’Œ |
ä¸ç‰ | |
| 012 | å·¦å³ä¸¤è¾¹åæ•°ç»„çš„å’Œç›¸ç‰ | 数组,å‰ç¼€å’Œ |
ç®€å• | |
| 013 | 二维å矩阵的和 | 设计,数组,矩阵,å‰ç¼€å’Œ |
ä¸ç‰ | |
| 014 | å—符串ä¸çš„å˜ä½è¯ | 哈希表,åŒæŒ‡é’ˆ,å—符串,æ»‘åŠ¨çª—å£ |
ä¸ç‰ | |
| 015 | å—符串ä¸çš„æ‰€æœ‰å˜ä½è¯ | 哈希表,å—符串,æ»‘åŠ¨çª—å£ |
ä¸ç‰ | |
| 016 | ä¸å«é‡å¤å—符的最长åå—符串 | 哈希表,å—符串,æ»‘åŠ¨çª—å£ |
ä¸ç‰ | |
| 017 | 嫿œ‰æ‰€æœ‰å—符的最çŸå—符串 | 哈希表,å—符串,æ»‘åŠ¨çª—å£ |
å›°éš¾ | |
| 018 | 有效的回文 | åŒæŒ‡é’ˆ,å—符串 |
ç®€å• | |
| 019 | æœ€å¤šåˆ é™¤ä¸€ä¸ªå—符得到回文 | 贪心,åŒæŒ‡é’ˆ,å—符串 |
ç®€å• | |
| 020 | 回文åå—符串的个数 | å—符串,动æ€è§„划 |
ä¸ç‰ | |
| 021 | åˆ é™¤é“¾è¡¨çš„å€’æ•°ç¬¬ n 个结点 | 链表,åŒæŒ‡é’ˆ |
ä¸ç‰ | |
| 022 | 链表ä¸çŽ¯çš„å…¥å£èŠ‚ç‚¹ | 哈希表,链表,åŒæŒ‡é’ˆ |
ä¸ç‰ | |
| 023 | 两个链表的第一个é‡åˆèŠ‚ç‚¹ | 哈希表,链表,åŒæŒ‡é’ˆ |
ç®€å• | |
| 024 | å转链表 | 递归,链表 |
ç®€å• | |
| 025 | 链表ä¸çš„ä¸¤æ•°ç›¸åŠ | æ ˆ,链表,æ•°å¦ |
ä¸ç‰ | |
| 026 | é‡æŽ’é“¾è¡¨ | æ ˆ,递归,链表,åŒæŒ‡é’ˆ |
ä¸ç‰ | |
| 027 | 回文链表 | æ ˆ,递归,链表,åŒæŒ‡é’ˆ |
ç®€å• | |
| 028 | 展平多级åŒå‘链表 | 深度优先æœç´¢,链表,åŒå‘链表 |
ä¸ç‰ | |
| 029 | 排åºçš„循环链表 | 链表 |
ä¸ç‰ | |
| 030 | æ’å…¥ã€åˆ é™¤å’Œéšæœºè®¿é—®éƒ½æ˜¯ O(1) 的容器 | 设计,数组,哈希表,æ•°å¦,éšæœºåŒ– |
ä¸ç‰ | |
| 031 | æœ€è¿‘æœ€å°‘ä½¿ç”¨ç¼“å˜ | 设计,哈希表,链表,åŒå‘链表 |
ä¸ç‰ | |
| 032 | 有效的å˜ä½è¯ | 哈希表,å—符串,æŽ’åº |
ç®€å• | |
| 033 | å˜ä½è¯ç»„ | 哈希表,å—符串,æŽ’åº |
ä¸ç‰ | |
| 034 | 外星è¯è¨€æ˜¯å¦æŽ’åº | 数组,哈希表,å—符串 |
ç®€å• | |
| 035 | æœ€å°æ—¶é—´å·® | 数组,æ•°å¦,å—符串,æŽ’åº |
ä¸ç‰ | |
| 036 | åŽç¼€è¡¨è¾¾å¼ | æ ˆ,数组,æ•°å¦ |
ä¸ç‰ | |
| 037 | å°è¡Œæ˜Ÿç¢°æ’ž | æ ˆ,数组 |
ä¸ç‰ | |
| 038 | æ¯æ—¥æ¸©åº¦ | æ ˆ,数组,å•è°ƒæ ˆ |
ä¸ç‰ | |
| 039 | 直方图最大矩形é¢ç§¯ | æ ˆ,数组,å•è°ƒæ ˆ |
å›°éš¾ | |
| 040 | çŸ©é˜µä¸æœ€å¤§çš„矩形 | æ ˆ,数组,动æ€è§„划,矩阵,å•è°ƒæ ˆ |
å›°éš¾ | |
| 041 | 滑动窗å£çš„å¹³å‡å€¼ | 设计,队列,数组,æ•°æ®æµ |
ç®€å• | |
| 042 | 最近请求次数 | 设计,队列,æ•°æ®æµ |
ç®€å• | |
| 043 | å¾€å®Œå…¨äºŒå‰æ ‘æ·»åŠ èŠ‚ç‚¹ | æ ‘,广度优先æœç´¢,设计,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 044 | äºŒå‰æ ‘æ¯å±‚的最大值 | æ ‘,深度优先æœç´¢,广度优先æœç´¢,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 045 | äºŒå‰æ ‘最底层最左边的值 | æ ‘,深度优先æœç´¢,广度优先æœç´¢,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 046 | äºŒå‰æ ‘çš„å³ä¾§è§†å›¾ | æ ‘,深度优先æœç´¢,广度优先æœç´¢,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 047 | äºŒå‰æ ‘å‰ªæž | æ ‘,深度优先æœç´¢,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 048 | åºåˆ—化与ååºåˆ—åŒ–äºŒå‰æ ‘ | æ ‘,深度优先æœç´¢,广度优先æœç´¢,设计,å—符串,äºŒå‰æ ‘ |
å›°éš¾ | |
| 049 | ä»Žæ ¹èŠ‚ç‚¹åˆ°å¶èŠ‚ç‚¹çš„è·¯å¾„æ•°å—之和 | æ ‘,深度优先æœç´¢,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 050 | å‘下的路径节点之和 | æ ‘,深度优先æœç´¢,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 051 | 节点之和最大的路径 | æ ‘,深度优先æœç´¢,动æ€è§„划,äºŒå‰æ ‘ |
å›°éš¾ | |
| 052 | å±•å¹³äºŒå‰æœç´¢æ ‘ | æ ˆ,æ ‘,深度优先æœç´¢,äºŒå‰æœç´¢æ ‘,äºŒå‰æ ‘ |
ç®€å• | |
| 053 | äºŒå‰æœç´¢æ ‘ä¸çš„ä¸åºåŽç»§ | æ ‘,深度优先æœç´¢,äºŒå‰æœç´¢æ ‘,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 054 | 所有大于ç‰äºŽèŠ‚ç‚¹çš„å€¼ä¹‹å’Œ | æ ‘,深度优先æœç´¢,äºŒå‰æœç´¢æ ‘,äºŒå‰æ ‘ |
ä¸ç‰ | |
| 055 | äºŒå‰æœç´¢æ ‘è¿ä»£å™¨ | æ ˆ,æ ‘,设计,äºŒå‰æœç´¢æ ‘,äºŒå‰æ ‘,è¿ä»£å™¨ |
ä¸ç‰ | |
| 056 | äºŒå‰æœç´¢æ ‘ä¸ä¸¤ä¸ªèŠ‚ç‚¹ä¹‹å’Œ | 数组,æ»‘åŠ¨çª—å£ |
ç®€å• | |
| 057 | å€¼å’Œä¸‹æ ‡ä¹‹å·®éƒ½åœ¨ç»™å®šçš„èŒƒå›´å†… | 数组,桶排åº,有åºé›†åˆ,排åº,æ»‘åŠ¨çª—å£ |
ä¸ç‰ | |
| 058 | 日程表 | 设计,çº¿æ®µæ ‘,有åºé›†åˆ |
ä¸ç‰ | |
| 059 | æ•°æ®æµçš„第 K 大数值 | æ ‘,设计,äºŒå‰æœç´¢æ ‘,äºŒå‰æ ‘,æ•°æ®æµ,å †ï¼ˆä¼˜å…ˆé˜Ÿåˆ—ï¼‰ |
ç®€å• | |
| 060 | 出现频率最高的 k ä¸ªæ•°å— | 数组,哈希表,分治,桶排åº,计数,快速选择,排åº,å †ï¼ˆä¼˜å…ˆé˜Ÿåˆ—ï¼‰ |
ä¸ç‰ | |
| 061 | 和最å°çš„ k 个数对 | 数组,å †ï¼ˆä¼˜å…ˆé˜Ÿåˆ—ï¼‰ |
ä¸ç‰ | |
| 062 | 实现å‰ç¼€æ ‘ | 设计,å—å…¸æ ‘,哈希表,å—符串 |
ä¸ç‰ | |
| 063 | 替æ¢å•è¯ | å—å…¸æ ‘,数组,哈希表,å—符串 |
ä¸ç‰ | |
| 064 | 神奇的å—å…¸ | 设计,å—å…¸æ ‘,哈希表,å—符串 |
ä¸ç‰ | |
| 065 | 最çŸçš„å•è¯ç¼–ç | å—å…¸æ ‘,数组,哈希表,å—符串 |
ä¸ç‰ | |
| 066 | å•è¯ä¹‹å’Œ | 设计,å—å…¸æ ‘,哈希表,å—符串 |
ä¸ç‰ | |
| 067 | 最大的异或 | ä½è¿ç®—,å—å…¸æ ‘,数组,哈希表 |
ä¸ç‰ | |
| 068 | 查找æ’å…¥ä½ç½® | 数组,二分查找 |
ç®€å• | |
| 069 | 山峰数组的顶部 | 数组,二分查找 |
ç®€å• | |
| 070 | æŽ’åºæ•°ç»„ä¸åªå‡ºçŽ°ä¸€æ¬¡çš„æ•°å— | 数组,二分查找 |
ä¸ç‰ | |
| 071 | 按æƒé‡ç”Ÿæˆéšæœºæ•° | æ•°å¦,二分查找,å‰ç¼€å’Œ,éšæœºåŒ– |
ä¸ç‰ | |
| 072 | æ±‚å¹³æ–¹æ ¹ | æ•°å¦,二分查找 |
ç®€å• | |
| 073 | ç‹’ç‹’åƒé¦™è•‰ | 数组,二分查找 |
ä¸ç‰ | |
| 074 | åˆå¹¶åŒºé—´ | 数组,æŽ’åº |
ä¸ç‰ | |
| 075 | æ•°ç»„ç›¸å¯¹æŽ’åº | 数组,哈希表,计数排åº,æŽ’åº |
ç®€å• | |
| 076 | 数组ä¸çš„第 k å¤§çš„æ•°å— | 数组,分治,快速选择,排åº,å †ï¼ˆä¼˜å…ˆé˜Ÿåˆ—ï¼‰ |
ä¸ç‰ | |
| 077 | é“¾è¡¨æŽ’åº | 链表,åŒæŒ‡é’ˆ,分治,排åº,å½’å¹¶æŽ’åº |
ä¸ç‰ | |
| 078 | åˆå¹¶æŽ’åºé“¾è¡¨ | 链表,分治,å †ï¼ˆä¼˜å…ˆé˜Ÿåˆ—ï¼‰,å½’å¹¶æŽ’åº |
å›°éš¾ | |
| 079 | 所有å集 | ä½è¿ç®—,数组,回溯 |
ä¸ç‰ | |
| 080 | 嫿œ‰ k ä¸ªå…ƒç´ çš„ç»„åˆ | 数组,回溯 |
ä¸ç‰ | |
| 081 | å…许é‡å¤é€‰æ‹©å…ƒç´ çš„ç»„åˆ | 数组,回溯 |
ä¸ç‰ | |
| 082 | 嫿œ‰é‡å¤å…ƒç´ 集åˆçš„ç»„åˆ | 数组,回溯 |
ä¸ç‰ | |
| 083 | 没有é‡å¤å…ƒç´ 集åˆçš„全排列 | 数组,回溯 |
ä¸ç‰ | |
| 084 | 嫿œ‰é‡å¤å…ƒç´ 集åˆçš„全排列 | 数组,回溯 |
ä¸ç‰ | |
| 085 | 生æˆåŒ¹é…çš„æ‹¬å· | å—符串,动æ€è§„划,回溯 |
ä¸ç‰ | |
| 086 | 分割回文åå—符串 | 深度优先æœç´¢,广度优先æœç´¢,图,哈希表 |
ä¸ç‰ | |
| 087 | å¤åŽŸ IP | å—符串,回溯 |
ä¸ç‰ | |
| 088 | çˆ¬æ¥¼æ¢¯çš„æœ€å°‘æˆæœ¬ | 数组,动æ€è§„划 |
ç®€å• | |
| 089 | 房屋å·ç›— | 数组,动æ€è§„划 |
ä¸ç‰ | |
| 090 | 环形房屋å·ç›— | 数组,动æ€è§„划 |
ä¸ç‰ | |
| 091 | 粉刷房å | 数组,动æ€è§„划 |
ä¸ç‰ | |
| 092 | 翻转å—符 | å—符串,动æ€è§„划 |
ä¸ç‰ | |
| 093 | æœ€é•¿æ–æ³¢é‚£å¥‘数列 | 数组,哈希表,动æ€è§„划 |
ä¸ç‰ | |
| 094 | 最少回文分割 | å—符串,动æ€è§„划 |
å›°éš¾ | |
| 095 | 最长公共ååºåˆ— | å—符串,动æ€è§„划 |
ä¸ç‰ | |
| 096 | å—符串交织 | å—符串,动æ€è§„划 |
ä¸ç‰ | |
| 097 | ååºåˆ—的数目 | å—符串,动æ€è§„划 |
å›°éš¾ | |
| 098 | 路径的数目 | æ•°å¦,动æ€è§„划,ç»„åˆæ•°å¦ |
ä¸ç‰ | |
| 099 | 最å°è·¯å¾„之和 | 数组,动æ€è§„划,矩阵 |
ä¸ç‰ | |
| 100 | ä¸‰è§’å½¢ä¸æœ€å°è·¯å¾„之和 | 数组,动æ€è§„划 |
ä¸ç‰ | |
| 101 | 分割ç‰å’Œå串 | æ•°å¦,å—符串,模拟 |
ç®€å• | |
| 102 | åŠ å‡çš„ç›®æ ‡å€¼ | 数组,动æ€è§„划,回溯 |
ä¸ç‰ | |
| 103 | æœ€å°‘çš„ç¡¬å¸æ•°ç›® | 广度优先æœç´¢,数组,动æ€è§„划 |
ä¸ç‰ | |
| 104 | 排列的数目 | 数组,动æ€è§„划 |
ä¸ç‰ | |
| 105 | 岛屿的最大é¢ç§¯ | 深度优先æœç´¢,广度优先æœç´¢,并查集,数组,矩阵 |
ä¸ç‰ | |
| 106 | 二分图 | 深度优先æœç´¢,广度优先æœç´¢,并查集,图 |
ä¸ç‰ | |
| 107 | 矩阵ä¸çš„è·ç¦» | 广度优先æœç´¢,数组,动æ€è§„划,矩阵 |
ä¸ç‰ | |
| 108 | å•è¯æ¼”å˜ | 广度优先æœç´¢,哈希表,å—符串 |
å›°éš¾ | |
| 109 | 开密ç é” | 广度优先æœç´¢,数组,哈希表,å—符串 |
ä¸ç‰ | |
| 110 | 所有路径 | 深度优先æœç´¢,广度优先æœç´¢,图,回溯 |
ä¸ç‰ | |
| 111 | 计算除法 | 深度优先æœç´¢,广度优先æœç´¢,并查集,图,数组,最çŸè·¯ |
ä¸ç‰ | |
| 112 | 最长递增路径 | 深度优先æœç´¢,广度优先æœç´¢,图,拓扑排åº,记忆化æœç´¢,动æ€è§„划 |
å›°éš¾ | |
| 113 | è¯¾ç¨‹é¡ºåº | 深度优先æœç´¢,广度优先æœç´¢,图,æ‹“æ‰‘æŽ’åº |
ä¸ç‰ | |
| 114 | 外星文å—å…¸ | 深度优先æœç´¢,广度优先æœç´¢,图,拓扑排åº,数组,å—符串 |
å›°éš¾ | |
| 115 | é‡å»ºåºåˆ— | 图,拓扑排åº,数组 |
ä¸ç‰ | |
| 116 | 朋å‹åœˆ | 深度优先æœç´¢,广度优先æœç´¢,并查集,图 |
ä¸ç‰ | |
| 117 | 相似的å—符串 | 深度优先æœç´¢,广度优先æœç´¢,并查集,å—符串 |
å›°éš¾ | |
| 118 | 多余的边 | 深度优先æœç´¢,广度优先æœç´¢,并查集,图 |
ä¸ç‰ | |
| 119 | 最长连ç»åºåˆ— | 并查集,数组,哈希表 |
ä¸ç‰ |
本项目著作æƒå½’ GitHub å¼€æºç¤¾åŒº Doocs 所有,商业转载请è”ç³» @yanglbme 获得授æƒï¼Œéžå•†ä¸šè½¬è½½è¯·æ³¨æ˜Žå‡ºå¤„。
欢迎å„ä½å°ä¼™ä¼´ä»¬æ·»åŠ @yanglbme 的个人微信(微信å·ï¼šYLB0109),备注 「leetcodeã€ã€‚åŽç»æˆ‘ä»¬ä¼šåˆ›å»ºç®—æ³•ã€æŠ€æœ¯ç›¸å…³çš„äº¤æµç¾¤ï¼Œå¤§å®¶ä¸€èµ·äº¤æµå¦ä¹ ,分享ç»éªŒï¼Œå…±åŒè¿›æ¥ã€‚
![]() |
|---|
知识共享 版æƒå½’属-ç›¸åŒæ–¹å¼å…±äº« 4.0 国际 公共许å¯è¯

