该仓库主要是学习数据结构的一些总结,习题来自LettCode
| # | title | difficulty |
|---|---|---|
| 696 | 计数二进制字串 | Easy |
| 344 | 反转字符串 | Easy |
| 557 | 反转字符串的单词 | Easy |
| 415 | 字符串相加 | Easy |
| 929 | 独特的电子邮件地址 | Easy |
| 3 | 无重复字符的最长子串 | Medium |
| # | title | difficulty |
|---|---|---|
| 实现 ArrayList | ||
| 17 | 电话号码的字母组合 | Medium |
| 914 | 卡牌分组 | Easy |
| 605 | 种花问题 | Easy |
| 349 | 两个数组的交集 | Easy |
| 169 | 求众数 | Easy |
| 229 | 求众数 | Medium |
| 561 | 数组拆分 | Easy |
| 442 | 数组中重复数字 | Medium |
| 54 | 螺旋矩阵 | Medium |
| 217 | 存在重复元素 | Easy |
| 48 | 旋转图像 | Medium |
| 189 | 旋转数组 | Easy |
| 118 | 杨辉三角 | Easy |
| 34 | 在排序数组中查找元素的第一个和最后一个位置 | Easy |
| 121 | 买卖股票的最佳时机 | Easy |
| 122 | 买卖股票的最佳时机 2 | Easy |
| 860 | 柠檬水找零 | Easy |
| 62 | 不同路径 | medium |
| 63 | 不同路径 2 | medium |
| 88 | 合并两个有序数组 | medium |
| 219 | 存在重复元素 II | Easy |
| ## sort |
| # | title | difficulty |
|---|---|---|
| 基本排序算法 | practice | |
| 堆排序 | practice | |
| 922 | 按奇偶排序数组 || | Easy |
| 922 | 按奇偶排序数组 | Easy |
| 164 | 最大间距 | Hard |
| 215 | 数组中最大的第 k 个最大元素 | Medium |
| 41 | 缺失的第一个正数 | Hard |
| # | title | difficulty |
|---|---|---|
| 89 | 格雷编码 | Medium |
| 93 | 复原 IP 地址 | Medium |
| # | title | difficulty |
|---|---|---|
| 实现单向链表 | ||
| 单链表快速排序 | ||
| 237 | 删除链表中的节点 | Easy |
| 206 | 反转链表 | Easy |
| # | title | difficulty |
|---|---|---|
| 622 | 循环队列 | Medium |
| 621 | 任务调度器 | Medium |
| # | title | difficulty |
|---|---|---|
| 定义二叉树 | ||
| 定义搜索树 | ||
| 98 | 搜素二叉树 | Medium |
| 101 | 对称二叉树 | Easy |
| 129 | 求根节点到叶节点数字之和 | Medium |
| 617 | 合并二叉树 | Easy |
| 112 | 路径总和 | Easy |
| # | title | difficulty |
|---|---|---|
| 创建最大堆 |
练习采用 ts 环境去运行编译,测试文件在 test 目录夹下 可以参考该问配置环境
测试
npm run test