编程基础 题库
鲁迅先生:世界上哪有什么天才,知识吧别人喝咖啡的时间用在了学习工作上。
在于体态,气质直背,态度。以身作则。
什么最重要?学习最重要。学习可以变成分数,分数可以变成钱。文雅。奔驰车。挣钱最重要,付出努力学习和工作挣钱是最快乐的事情,付出努力收获成果,物质基础。
不浮躁,踏实,脚踏实地,和爬山一样走好脚下的这一个台阶。别眼高手低。做好当下能做好的事情。别看别人过的好差。自己能做成什么就做什么。自己能挣钱20元就挣钱20元,别看别人挣10元还是100,那是别人的人生别人努力的,自己的人生靠自己。就和班里同学付出努力考的分数一样。没有免费的午餐。平等。
掌握的技术技能 | 知识点 | 基础题 | 进阶题 | 题目 | 难度 | 链接 | 备注 |
1基础准备 | 1.输入的读取解析,和格式输出 | 包含 | 包含 | ||||
1基础准备 | 2.基础类型(如:bit,byte,浮点型,8进制/10进制/16进制,补码,等) | ||||||
2基础数据结构概念,基本操作,以及优缺点等 | 1 字符串操作(标准库,解析,匹配等) | ||||||
1学习材料: https://leetcode-cn.com/explore/learn/card/array-and-string/ |
1)1048. 最长字符串链 | 中等 | https://leetcode-cn.com/problems/longest-string-chain/ | ||||
2)151. 翻转字符串里的单词 | 中等 | https://leetcode-cn.com/problems/reverse-words-in-a-string/ | |||||
3)3.无重复字符的最长子串 | 中等 | https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ | |||||
4)5.最长回文子串 | 中等 | https://leetcode-cn.com/problems/longest-palindromic-substring/ | |||||
5)6.Z字形变换 | 中等 | https://leetcode-cn.com/problems/zigzag-conversion/ | |||||
6)14.最长公共子串 | 简单 | https://leetcode-cn.com/problems/longest-common-prefix | |||||
7)28.实现 strStr() | 简单 | https://leetcode-cn.com/problems/implement-strstr | |||||
8)67.二进制求和 | 简单 | https://leetcode-cn.com/problems/add-binary | |||||
9)1143.最长公共子序列 | 中等 | https://leetcode-cn.com/problems/longest-common-subsequence | |||||
10)93. 复原IP地址 | 中等 | https://leetcode-cn.com/problems/restore-ip-addresses/ | |||||
11)43. 字符串相乘 | 中等 | https://leetcode-cn.com/problems/multiply-strings/ | |||||
12)227. 基本计算器 II | 中等 | https://leetcode-cn.com/problems/basic-calculator-ii/ | |||||
|
|||||||
2基础数据结构概念,基本操作,以及优缺点等 | 2 线性表(含数组,动态数组等) | ||||||
2 学习材料:
1. https://leetcode-cn.com/explore/learn/card/array-and-string/ |
1)48. 旋转图像 | 困难 | https://leetcode-cn.com/problems/rotate-image/ | ||||
2)724.寻找数组的中心索引 | 简单 | https://leetcode-cn.com/problems/find-pivot-index | |||||
3)491.对角线遍历 | 中等 | https://leetcode-cn.com/problems/diagonal-traverse | |||||
4)54.螺旋矩阵 | 中等 | https://leetcode-cn.com/problems/spiral-matrix | |||||
5)118.杨辉三角 | 简单 | https://leetcode-cn.com/problems/pascals-triangle | |||||
6)11.盛水最多的容器 | 中等 | https://leetcode-cn.com/problems/container-with-most-water/ | |||||
7)15.三数之和 | 中等 | https://leetcode-cn.com/problems/3sum/ | |||||
8)209.长队最小的子数组 | 中等 | https://leetcode-cn.com/problems/minimum-size-subarray-sum | |||||
2基础数据结构概念,基本操作,以及优缺点等 | 3 队列 | ||||||
3 学习材料:
https://leetcode-cn.com/explore/learn/card/queue-stack/ |
1)622. 设计循环队列 | 中等 | https://leetcode-cn.com/problems/design-circular-queue/ | ||||
2)225.用队列实现栈 | 简单 | https://leetcode-cn.com/problems/implement-stack-using-queues | |||||
3)621. 任务调度器 | 中等 | https://leetcode-cn.com/problems/task-scheduler/ | |||||
4)641. 设计循环双端队列 | 中等 | https://leetcode-cn.com/problems/design-circular-deque/ | |||||
5)363. 矩形区域不超过 K 的最大数值和 | 困难 | https://leetcode-cn.com/problems/max-sum-of-rectangle-no-larger-than-k/ | |||||
6)933. 最近的请求次数 | 简单 | https://leetcode-cn.com/problems/number-of-recent-calls/ | |||||
2基础数据结构概念,基本操作,以及优缺点等 | 4 栈 | ||||||
4 学习材料:
https://leetcode-cn.com/explore/learn/card/queue-stack/ |
1)862. 和至少为 K 的最短子数组 | 困难 | https://leetcode-cn.com/problems/shortest-subarray-with-sum-at-least-k/ | ||||
2)155 最小栈 | 简单 | https://leetcode-cn.com/problems/min-stack/ | |||||
3)20 有效的括号 | 简单 | https://leetcode-cn.com/problems/valid-parentheses | |||||
4)739 每日温度 | 中等 | https://leetcode-cn.com/problems/daily-temperatures | |||||
5)71. 简化路径 | 中等 | https://leetcode-cn.com/problems/simplify-path/ | |||||
6)150 逆波兰表达式求值 | 中等 | https://leetcode-cn.com/problems/evaluate-reverse-polish-notation | |||||
7)42 接雨水 | 困难 | https://leetcode-cn.com/problems/trapping-rain-water/ | |||||
8)84 柱状图中最大的矩形 | 困难 | https://leetcode-cn.com/problems/largest-rectangle-in-histogram/ | |||||
9)503. 下一个更大元素 II | 中等 | https://leetcode-cn.com/problems/next-greater-element-ii/ | |||||
10)85. 最大矩形 | 困难 | https://leetcode-cn.com/problems/maximal-rectangle/ | |||||
11)962. 最大宽度坡 | 中等 | https://leetcode-cn.com/problems/maximum-width-ramp/ | |||||
2基础数据结构概念,基本操作,以及优缺点等 | 5 链表 | https://leetcode-cn.com/explore/learn/card/linked-list/ | |||||
5 学习材料:
https://leetcode-cn.com/explore/learn/card/linked-list/ |
1)23. 合并K个排序链表 | 困难 | https://leetcode-cn.com/problems/merge-k-sorted-lists/ | ||||
2)707 设计链表 | 中等 | https://leetcode-cn.com/problems/design-linked-list | |||||
3)141 环形链表 | 简单 | https://leetcode-cn.com/problems/linked-list-cycle | |||||
4)142 环形链表2 | 中等 | https://leetcode-cn.com/problems/linked-list-cycle-ii | |||||
5)160 相交链表 | 简单 | https://leetcode-cn.com/problems/intersection-of-two-linked-lists | |||||
6)19 删除链表的倒数第N个节点 | 中等 | https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list | |||||
7)23 合并K个排序链表 | 困难 | https://leetcode-cn.com/problems/merge-k-sorted-lists/ | |||||
2基础数据结构概念,基本操作,以及优缺点等 | 6 哈希表 | ||||||
2基础数据结构概念,基本操作,以及优缺点等 | 6 学习材料:
https://leetcode-cn.com/explore/learn/card/hash-table/ |
1)1311. 获取你好友已观看的视频 | 简单 | https://leetcode-cn.com/problems/get-watched-videos-by-your-friends/ | |||
2)705 设计哈希集合 | 简单 | https://leetcode-cn.com/problems/design-hashset | |||||
3)706 设计哈希映射 | 简单 | https://leetcode-cn.com/problems/design-hashmap | |||||
4)387 字符串中的第一个唯一字符 | 简单 | https://leetcode-cn.com/problems/first-unique-character-in-a-string | |||||
5)18 四数之和 | 中等 | https://leetcode-cn.com/problems/4sum/ | |||||
6)49 字母异位词分组 | 中等 | https://leetcode-cn.com/problems/group-anagrams | |||||
7)36 有效的数独 | 中等 | https://leetcode-cn.com/problems/valid-sudoku | |||||
8)652 寻找重复的子树 | 中等 | https://leetcode-cn.com/problems/find-duplicate-subtrees | |||||
3高级数据结构概念,基本操作,以及优缺点等 | 1. 二叉查找树/平衡树 | ||||||
1.学习材料: |
1)652 寻找重复的子树 | 中等 | https://leetcode-cn.com/problems/construct-binary-search-tree-from-preorder-traversal/ | ||||
2)515. 在每个树行中找最大值 | 中等 | https://leetcode-cn.com/problems/find-largest-value-in-each-tree-row/ | |||||
3)975. 奇偶跳 | 困难 | https://leetcode-cn.com/problems/odd-even-jump/ | |||||
4)834. 树中距离之和 | 困难 | https://leetcode-cn.com/problems/sum-of-distances-in-tree/ | |||||
5)144 二叉树的前序遍历 | 中等 | https://leetcode-cn.com/problems/binary-tree-preorder-traversal | |||||
6)102 二叉树的层次遍历 | 中等 | https://leetcode-cn.com/problems/binary-tree-level-order-traversal | |||||
7)98 验证二叉搜索树 | 中等 | https://leetcode-cn.com/problems/validate-binary-search-tree | |||||
8)173 二叉搜索树迭代器 | 中等 | https://leetcode-cn.com/problems/binary-search-tree-iterator | |||||
9)230 二叉搜索树中第K小的元素 | 中等 | https://leetcode-cn.com/problems/kth-smallest-element-in-a-bst | |||||
10)236 二叉树的最近公共祖先 | 中等 | https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree | |||||
3高级数据结构概念,基本操作,以及优缺点等 | 2 堆/二叉堆 | ||||||
1)215 数组中的第K个最大元素 | 中等 | https://leetcode-cn.com/problems/kth-largest-element-in-an-array | |||||
2)239 滑动窗口最大值 | 困难 | https://leetcode-cn.com/problems/sliding-window-maximum | |||||
3)692. 前K个高频单词 | 中等 | https://leetcode-cn.com/problems/top-k-frequent-words/ | |||||
4)407. 接雨水 II | 困难 | https://leetcode-cn.com/problems/trapping-rain-water-ii/ | |||||
5)264. 丑数 II | 中等 | https://leetcode-cn.com/problems/ugly-number-ii/comments/ | |||||
6)355. 设计推特 | 中等 | https://leetcode-cn.com/problems/design-twitter/ | |||||
3高级数据结构概念,基本操作,以及优缺点等 | 3 图论。无向图、有向图等基本知识 | ||||||
1)127 单词接龙 | 中等 | https://leetcode-cn.com/problems/word-ladder | |||||
2)200 岛屿数量 | 中等 | https://leetcode-cn.com/problems/number-of-islands | |||||
3)207 课程表 | 中等 | https://leetcode-cn.com/problems/course-schedule | |||||
4)210. 课程表 II | 中等 | https://leetcode-cn.com/problems/course-schedule-ii/ | |||||
5)997 找到小镇的法官 | 简单 | https://leetcode-cn.com/problems/find-the-town-judge/ | |||||
6)133 克隆图 | 中等 | https://leetcode-cn.com/problems/clone-graph/ | |||||
4常用算法及思想 | 1 排序算法(快速、插入、堆排序等)。注:高级语言可以使用库函数。 | ||||||
1) 1203. 项目管理 | 困难 | https://leetcode-cn.com/problems/sort-items-by-groups-respecting-dependencies/ | |||||
2) 179 最大数 | 中等 | https://leetcode-cn.com/problems/largest-number | |||||
3)324 摆动排序 | 中等 | https://leetcode-cn.com/problems/wiggle-sort-ii | |||||
4)162 寻找峰值 | 中等 | https://leetcode-cn.com/problems/find-peak-element | |||||
5)287 寻找重复数 | 中等 | https://leetcode-cn.com/problems/find-the-duplicate-number | |||||
6)315 计算右侧小于当前元素的个数 | 困难 | https://leetcode-cn.com/problems/count-of-smaller-numbers-after-self | |||||
7)56 合并区间 | 中等 | https://leetcode-cn.com/problems/merge-intervals | |||||
2 迭代、递归的思想 | |||||||
2 学习资料:
https://leetcode-cn.com/explore/featured/card/recursion-i/ |
1)726. 原子的数量 | 困难 | https://leetcode-cn.com/problems/number-of-atoms/ | ||||
2)24 两两交换链表中的节点 | 中等 | https://leetcode-cn.com/problems/swap-nodes-in-pairs | |||||
3)70 爬楼梯 | 中等 | https://leetcode-cn.com/problems/climbing-stairs | |||||
4)698. 划分为k个相等的子集 | 中等 | https://leetcode-cn.com/problems/partition-to-k-equal-sum-subsets/ | |||||
5)687. 最长同值路径 | 简单 | https://leetcode-cn.com/problems/longest-univalue-path/ | |||||
6)726. 原子的数量 | 困难 | https://leetcode-cn.com/problems/number-of-atoms/ | |||||
7)894. 所有可能的满二叉树 | 中等 | https://leetcode-cn.com/problems/all-possible-full-binary-trees/ | |||||
3 分治的思想(如:二分查找、归并排序等) | |||||||
3 学习资料:
https://leetcode-cn.com/explore/learn/card/binary-search/ |
1)84. 柱状图中最大的矩形 | 困难 | https://leetcode-cn.com/problems/largest-rectangle-in-histogram/ | ||||
2)704 二分查找 | 简单 | https://leetcode-cn.com/problems/binary-search | |||||
3)69 x 的平方根 | 简单 | https://leetcode-cn.com/problems/sqrtx | |||||
4)33 搜索旋转排序数组 | 中等 | https://leetcode-cn.com/problems/search-in-rotated-sorted-array | |||||
5)34 在排序数组中查找元素的第一个和最后一个位置 | 中等 | https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array | |||||
6)658 找到 K 个最接近的元素 | 中等 | https://leetcode-cn.com/problems/find-k-closest-elements | |||||
7)50 Pow(x, n) | 中等 | https://leetcode-cn.com/problems/powx-n | |||||
8)240. 搜索二维矩阵 II | 中等 | https://leetcode-cn.com/problems/search-a-2d-matrix-ii/solution/ | |||||
9)4. 寻找两个有序数组的中位数 | 困难 | https://leetcode-cn.com/problems/median-of-two-sorted-arrays/ | |||||
4 搜索算法(深搜,广搜等) | |||||||
4 学习资料:
https://leetcode-cn.com/explore/orignial/card/all-about-lockup-table/ |
1)936. 戳印序列 | 困难 | https://leetcode-cn.com/problems/stamping-the-sequence/ | ||||
2)1219. 黄金矿工 | 中等 | https://leetcode-cn.com/problems/path-with-maximum-gold/ | |||||
3)928. 尽量减少恶意软件的传播 II | 困难 | https://leetcode-cn.com/problems/minimize-malware-spread-ii/ | |||||
4)329. 矩阵中的最长递增路径 | 困难 | https://leetcode-cn.com/problems/longest-increasing-path-in-a-matrix/ | |||||
5)980. 不同路径 III | 困难 | https://leetcode-cn.com/problems/unique-paths-iii/ | |||||
6)79. 单词搜索 | 中等 | https://leetcode-cn.com/problems/word-search/ | |||||
7)207. 课程表 | 中等 | https://leetcode-cn.com/problems/course-schedule/ | |||||
8)752. 打开转盘锁 | 中等 | https://leetcode-cn.com/problems/open-the-lock/ | |||||
9)105. 从前序与中序遍历序列构造二叉树 | 中等 | https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/ | |||||
10)934. 最短的桥 | 中等 | https://leetcode-cn.com/problems/shortest-bridge/ | |||||
11)685. 冗余连接 II | 困难 | https://leetcode-cn.com/problems/redundant-connection-ii/ | |||||
12)332. 重新安排行程 | 中等 | https://leetcode-cn.com/problems/reconstruct-itinerary/ | |||||
13)337. 打家劫舍 III | 中等 | https://leetcode-cn.com/problems/house-robber-iii/ | |||||
14)113. 路径总和 II | 中等 | https://leetcode-cn.com/problems/path-sum-ii/ | |||||
15)127. 单词接龙 | 中等 | https://leetcode-cn.com/problems/word-ladder/ | |||||
16)139. 单词拆分 | 中等 | https://leetcode-cn.com/problems/word-break/ | |||||
17)934. 最短的桥 | 中等 | https://leetcode-cn.com/problems/shortest-bridge/ | |||||
5 贪心算法 | |||||||
1)968. 监控二叉树 | 困难 | https://leetcode-cn.com/problems/binary-tree-cameras/ | |||||
2)1130. 叶值的最小代价生成树 | 中等 | https://leetcode-cn.com/problems/minimum-cost-tree-from-leaf-values/ | |||||
3)406 根据身高重建队列 | 中等 | https://leetcode-cn.com/problems/queue-reconstruction-by-height | |||||
4)860 柠檬水找零 | 简单 | https://leetcode-cn.com/problems/lemonade-change | |||||
5)135 分发糖果 | 困难 | https://leetcode-cn.com/problems/candy/ | |||||
6)55 跳跃游戏 | 中等 | https://leetcode-cn.com/problems/jump-game/ | |||||
7)122. 买卖股票的最佳时机 II | 简单 | https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/ | |||||
8)402. 移掉K位数字 | 中等 | https://leetcode-cn.com/problems/remove-k-digits/ | |||||
6 动态规划(背包0-1难度) | |||||||
1)1048. 最长字符串链 | 中等 | https://leetcode-cn.com/problems/longest-string-chain/ | |||||
2)85. 最大矩形 | 中等 | https://leetcode-cn.com/problems/maximal-rectangle/ | |||||
3)62. 不同路径 | 中等 | https://leetcode-cn.com/problems/unique-paths/ | |||||
4)674 最长连续递增序列 | 简单 | https://leetcode-cn.com/problems/longest-continuous-increasing-subsequence | |||||
5)395 至少有K个重复字符的最长子串 | 中等 | https://leetcode-cn.com/problems/longest-substring-with-at-least-k-repeating-characters | |||||
6)124 二叉树中的最大路径和 | 困难 | https://leetcode-cn.com/problems/binary-tree-maximum-path-sum | |||||
7)198 打家劫舍 | 简单 | https://leetcode-cn.com/problems/house-robber | |||||
8)279 完全平方数 | 中等 | https://leetcode-cn.com/problems/perfect-squares | |||||
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现