1.局部内部类 局部内部类存在于方法块或者语句块中,不能有访问控制修饰符和static进行修饰 2.接口 jdk1.8前的接口中只能有public abstarct类型的抽象...
1.局部内部类 局部内部类存在于方法块或者语句块中,不能有访问控制修饰符和static进行修饰 2.接口 jdk1.8前的接口中只能有public abstarct类型的抽象...
推荐使用Typora,直接输入这些指令回车就能唤出效果了 一、标题 二、引用 三、有序列表 四、无序列表 五、任务列表 六、代码块 七、表格 八、脚注 九、横线 十、链接 直...
Gradle出现编译错误,显示连接超时了,所以就需要更换国内的镜像,比如说阿里云[https://help.aliyun.com/document_detail/102512...
Windows安装HSDIS、JITWatch JVM的学习很多时候得看着字节码和汇编代码才好理解,所以先下载HSDIS和JITWatch做好准备。 按照教程一步一步的来 1...
目录: 如何存储密码才是安全的? 彩虹表不是 密码-->明文 的简单存储 彩虹表的前身--预先计算的散列链 彩虹表 为什么加盐哈希可以抵御彩虹表 如何存储密码才是安全的? 密...
KMP算法 假设字符串str长度为N,字符串match长度为M,M <= N,想确定str中是否有某个子串是等于match的。 时间复杂度O(N) 暴力解 直接遍历,以i(0...
02-类似斐波那契数列的递归 斐波那契数列的递归和线性实现方式 按照上面两种实现方式最多只能将时间复杂度优化到O(N),而通过线性代数的一种定理可以将斐波那契问题优化到log...
Dijkstra算法 Dijkstra算法完成的是找到某个节点到其他各个节点的最短距离返回一个距离表,规定所有路线权重都是大于0的,一开始需要给一个点,因为完成的就是找这个点...
堆排序 堆是一种完全二叉树结构,完全二叉树就是一种满二叉树或者正在变满的结构。 堆分为大根堆和小根堆,大小的意思是指任意子树的头节点都是这棵子树中最大或者最小的值的意思。 堆...
使用递归套路写贪心对数器 贪心算法 贪心算法就是一种你在某个情况下选择一种当时来说最好的标准来完成整个事情(局部最优,全局来看未必最优),不过如果你的贪心并没有得到全局的最优...
求最大二叉搜索子树大小 面试题 给定一棵二叉树的头节点head,返回这颗二叉树中最大的二叉搜索子树的大小 思考 任意一棵树求它的最大二叉搜索子树大小 先考虑这棵树本身是不是二...
折纸问题 面试题 请把一段纸条竖着放在桌子上,然后从纸条的下边向上方对折1次,压出折痕后展开。此时折痕是凹下去的,即折痕突起的方向指向纸条的背面。 如果从纸条的下边向上方连续...
求后继节点 面试题:二叉树结构如下定义:Class Node {V value;Node left;Node right;Node parent;}给你二叉树中的某个节点,返...
遍历二叉树 递归方式遍历 没什么好说的,就是打印的时间点不同,先序是先打印头,然后处理左子树,再处理右子树,中序和后序同理。 认识递归序 看上面的三个算法,你会发现主要的代码...
直接插入排序 概念 直接插入排序就是将一堆数据分为两个部分(思想上分开而已,实际上还是在同一个数组中),一部分是有序的,一部分是无序的,每次从无序表中找一个需要插入有序表中值...
之前还是草率了,原来时间复杂度算的是最差情况,然后测试的时候用的都是随机数据所以让1.0大展身手,一上已经有序的数据就是O(N^2)了
快速排序快速排序 快速排序是对冒泡排序的改进,冒泡排序的缺陷就是一轮走完虽然也做了大量的交换,但是剩下的数据之间没有关系下一次还要再重新找一个最大的。而快速排序对它的改进是,一轮走完...
经典经典
两个可能有环链表可能相交求交点问题两个可能有环链表可能相交求交点问题 面试题 给定两个可能有环也可能无环的单链表,头节点head1和head2。请实现一个函数,如果两个链表相交,请返回相交的 第一个节点。如果...
两个可能有环链表可能相交求交点问题 面试题 给定两个可能有环也可能无环的单链表,头节点head1和head2。请实现一个函数,如果两个链表相交,请返回相交的 第一个节点。如果...
分治法与归并排序 分治法 许多有用的算法在结构上是递归的:为了解决一个给定的问题,算法一次或多次递归地调用其自身以解决紧密相关的若干子问题。这些算法使用的就是分治思想:1.先...
希尔排序 介绍 插入排序比起冒泡和选择排序来说速度快很多,但是如果出现这种例子。有序表为{2,3,4,5,6},现在需要插入1,那么全部5个都要完成一次后移,这就大大影响了效...