1 爬楼梯(归纳 f(n)=f(n-1)+f(n-2)) 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你…
常用算法-链表
本节重点:主要包含链表相关算法。 总结: 1、链表翻转是基本操作 k个一组翻转列表。 3、node.next.…
常用算法-二分查找
总结 1、一涉及到有序数组,就要想到用二分查找解决。关于二分查找主题:https://leetcode-cn.…
常用算法-总结
本文概览: 1、常用的算法有: (1)排序算法 排序: 冒泡、插入、选择、快速排序、合并排序 (2) 查找算法…
常用算法-多维数组(矩阵)
总结 1、范围求和II 2、螺旋遍历 3、对角线遍历 4、旋转数组中元素 算法:先对角交换(转置数组)。然后交…
常用算法-堆(PriorityQueue实现)
介绍:对的定义和应用。 1 构造一个堆 (1)每次新增操作之后,需要调整堆siftUpComparable:将…
常用算法-树
总结: 1、BST两个相关问题解决点 (1)与二分查找绑定。 BST的遍历是二分查找(4.1节 BST的二分查…
常用算法-数组
本文总结: 1、数组运算 三个数最大乘积 2、数组统计 使用Map或者Set来实现。比如重复、丢失。 快排。比…
常用算法-并查集
本文概览:介绍了解决并查集问题三个步骤。 1 并查集问题方案 用于处理不相交集合的合并和查询问题,速度很快。 …
常用算法-排序
1 JDK排序 通过JDK的Collections.sort和Comparator的定义 [crayon-67…
常用算法-字符串
总结 CASE 1、回文 最长回文子串。 最多删除一个字符串 1.1.2 给定一个字符串判断有多少个回文串。(…