宣言:早搞晚搞,迟早要搞,干就是了! Just Do IT!
数据结构是为算法服务的
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
1. 两数之和 | 数组 哈希表 |
给定一个整数数组和目标值,找出和为目标值的那两个整数。 | Swift |
724. 寻找数组的中心索引 | 数组 |
给定一个整数数组,找出「中心索引」 | Swift |
747. 至少是其他数字两倍的最大数 | 数组 |
查找数组中的最大元素是否至少是数组中每个其他数字的两倍。 | Swift |
66. 加一 | 数组 |
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。 | Swift |
498. 对角线遍历 | 数组 |
给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素 | Swift |
118. 杨辉三角 | 数组 |
给定一个非负整数 *numRows,*生成杨辉三角的前 numRows 行 | Swift |
283. 移动零 | 数组 |
给定一个数组 nums ,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 |
Swift |
27. 移除元素 | 数组 |
给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 | Swift |
26. 删除排序数组中的重复项 | 数组 |
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 | Swift |
75. 颜色分类 | 数组 排序 双指针 |
给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。 | Swift |
215. 数组中的第K个最大元素 | 数组 排序 多指针 |
在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 | Swift |
88. 合并两个有序数组 | 数组 双指针 |
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中*,*使得 num1 成为一个有序数组。 | Swift |
167. 两数之和 II - 输入有序数组 | 数组 双指针 二分查找 |
给定一个已按照*升序排列* 的有序数组,找到两个数使得它们相加之和等于目标数。 | Swift |
125. 验证回文串 | 数组 指针碰撞 |
给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 | Swift |
345. 反转字符串中的元音字母 | 数组 指针碰撞 |
编写一个函数,以字符串作为输入,反转该字符串中的元音字母。 | Swift |
11. 盛最多水的容器 | 数组 双指针 |
给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 | Swift |
209. 长度最小的子数组 | 数组 双指针 二分查找 |
给定一个含有 n 个正整数的数组和一个正整数 **s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。**如果不存在符合条件的连续子数组,返回 0。 | Swift |
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
67. 二进制求和 | 字符串 数学 |
给定两个二进制字符串,返回他们的和(用二进制表示)。 | Swift |
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
24.两两交换链表中的节点 | 链表 |
给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 | Swift |
707. 设计链表 | 链表 |
设计链表的实现。您可以选择使用单链表或双链表。 | Swift |
19. 删除链表的倒数第N个节点 | 链表 双指针 |
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 | Swift |
203. 移除链表元素 | 链表 |
删除链表中等于给定值 val 的所有节点。 | Swift |
328. 奇偶链表 | 链表 多指针 |
给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。 | Swift |
234. 回文链表 | 链表 双指针 |
判断一个链表是否为回文链表。 | Swift |
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
1003. 检查替换后的词是否有效 | 字符串 栈 |
按给定规则检查替换后的词有效性 | Swift |
71. 简化路径 | 字符串 栈 |
以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。 | Swift |
155. 最小栈 | 栈 、设计 |
设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 | Swift |
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
算法要作用在特定的数据结构之上
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
274. H指数 | 排序 哈希 |
给定论文被引用次数的数组。编写一个方法,计算出研究者的 h 指数。 | Swfit |
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
标题 | 标签 | 描述 | 题解 |
---|---|---|---|
8.字符串转换整数 (atoi) | 数学 字符串 |
实现一个 atoi 函数,使其能将字符串转换成整数 |
Swift |
151. 翻转字符串里的单词 | 字符串 |
给定一个字符串,逐个翻转字符串中的每个单词。 | Swift |
880. 索引处的解码字符串 | 字符串 、余数 |
给定编码字符串,查找解码字符串中的第 K 个字母 | Swift |