
玩转算法
文章平均质量分 64
。。。
程研板
计算机本硕连读,热爱大数据和人工智能,希望能够为apache社区添砖加瓦。2025年起开始接做毕设的项目。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
玩转算法(十四)——链表(排序和重排)
目录重排86. 分隔链表328. 奇偶链表143. 重排链表排序148. 排序链表147. 对链表进行插入排序 重排 86. 分隔链表 86. 分隔链表 328. 奇偶链表 328. 奇偶链表 143. 重排链表 143. 重排链表 排序 148. 排序链表 148. 排序链表 147. 对链表进行插入排序 147. 对链表进行插入排序 ...原创 2021-07-29 13:06:58 · 322 阅读 · 0 评论 -
玩转算法(十三)——链表(双链表)
目录双链表2. 两数相加445. 两数相加 II21. 合并两个有序链表 双链表 2. 两数相加 2. 两数相加 445. 两数相加 II 445. 两数相加 II 21. 合并两个有序链表 21. 合并两个有序链表原创 2021-07-26 12:44:05 · 196 阅读 · 0 评论 -
玩转算法(十二)——链表(删除链表)
目录删除链表83. 删除排序链表中的重复元素203. 移除链表元素82. 删除排序链表中的重复元素 II237. 删除链表中的节点19. 删除链表的倒数第 N 个结点 删除链表 83. 删除排序链表中的重复元素 83. 删除排序链表中的重复元素 203. 移除链表元素 203. 移除链表元素 82. 删除排序链表中的重复元素 II 82. 删除排序链表中的重复元素 II 237. 删除链表中的节点 237. 删除链表中的节点 19. 删除链表的倒数第 N 个结点 19. 删除链表的倒数第 N 个结点 ..原创 2021-07-25 21:26:54 · 198 阅读 · 0 评论 -
玩转算法(十一)——链表(反转链表)
目录反转链表206. 反转链表92. 反转链表 II24. 两两交换链表中的节点25. K 个一组翻转链表61. 旋转链表 反转链表 206. 反转链表 206. 反转链表 92. 反转链表 II 92. 反转链表 II 24. 两两交换链表中的节点 24. 两两交换链表中的节点 25. K 个一组翻转链表 25. K 个一组翻转链表 61. 旋转链表 61. 旋转链表 ...原创 2021-07-24 12:06:11 · 188 阅读 · 1 评论 -
玩转算法(八)——查找表(数字之和)
目录数字之和类型1. 两数之和(简单)15. 三数之和(中等)18. 四数之和(中等)16. 最接近的三数之和(中等) 数字之和类型 1. 两数之和(简单) 思路一:先排序再使用双指针。时间复杂度为O(nlogn)。但是本题,排序后索引改变了,会有点麻烦。 leetcode中167题,可直接用双指针进行求解。 思路二:使用哈希表,需要注意的是,不能先把数组中所有数据都放入哈希表,因为重复的数会被覆盖,需要建立一个指针从第一个数往后移动,指针之前的数放入哈希表 ,指针的数和之前的哈希表进行计算。时间复杂度为O原创 2020-11-28 17:12:23 · 277 阅读 · 0 评论 -
玩转算法(七)——查找表(简单应用)
目录242. 有效的字母异位词202. 快乐数290. 单词规律205. 同构字符串451. 根据字符出现频率排序 242. 有效的字母异位词 242. 有效的字母异位词 202. 快乐数 202. 快乐数 290. 单词规律 290. 单词规律 205. 同构字符串 205. 同构字符串 451. 根据字符出现频率排序 451. 根据字符出现频率排序 ...原创 2020-11-23 19:39:47 · 372 阅读 · 0 评论 -
玩转算法(六)——查找表(查找交集及进阶)
目录查找表介绍查找表相关题目349. 两个数组的交集(简单)350. 两个数组的交集 II(简单) 查找表介绍 查找表的底层结构: TreeMap和TreeSet的底层用的平衡二叉树。 HashMap和HashSet的底层用的哈希表(数组+链表)。 如果只需要简单的进行插入和查找,使用HashMap和HashSet效率会更高。 但是会使查找表失去顺序性,求解下面问题适合用TreeMap和TreeSet。 查找表相关题目 349. 两个数组的交集(简单) 349. 两个数组的交集 public int[]原创 2020-11-20 18:33:56 · 258 阅读 · 0 评论 -
玩转算法(五)——数组(滑动窗口)
目录209. 长度最小的子数组(中等)3. 无重复字符的最长子串(中等)438. 找到字符串中所有字母异位词(中等)76. 最小覆盖子串(困难) 209. 长度最小的子数组(中等) 209. 长度最小的子数组 3. 无重复字符的最长子串(中等) 3. 无重复字符的最长子串 438. 找到字符串中所有字母异位词(中等) 438. 找到字符串中所有字母异位词 76. 最小覆盖子串(困难) 76. 最小覆盖子串 ...原创 2020-11-18 21:27:03 · 819 阅读 · 0 评论 -
玩转算法(四)——数组(指针碰撞)
目录字符串回文或反转344. 反转字符串345. 反转字符串中的元音字母125. 验证回文串到达目标值或最大值167. 两数之和 II - 输入有序数组11. 盛最多水的容器 字符串回文或反转 344. 反转字符串 344. 反转字符串 345. 反转字符串中的元音字母 345. 反转字符串中的元音字母 125. 验证回文串 125. 验证回文串 到达目标值或最大值 167. 两数之和 II - 输入有序数组 167. 两数之和 II - 输入有序数组 11. 盛最多水的容器 11. 盛最多原创 2020-11-16 10:56:37 · 365 阅读 · 0 评论 -
玩转算法(三)——数组(高级排序算法的运用)
目录原创 2020-11-14 18:05:05 · 333 阅读 · 0 评论 -
玩转算法(二)——数组(快索引和慢索引)
目录原创 2020-11-11 10:58:00 · 329 阅读 · 0 评论 -
玩转算法(一)——时间复杂度
目录数据规模递归算法的时间复杂度均摊时间复杂度 数据规模 public class NumScale { public static void main(String[] args) { for(int x = 0; x < 10; x++) { double n = Math.pow(10, x); long startTime = System.currentTimeMillis(); int sum原创 2020-11-08 11:49:52 · 318 阅读 · 0 评论