java技术栈
0赞, 时间复杂度均为O(n^2)
冒泡排序, 需要空间n + 1,; 时间复杂度比较比较需要(n + 1) * n/2; 交换最少为0, 最大为(n + 1) * n/2;选择排序, 需要空间n + 1; 比较次数: 太难算了, 是count这个数 public static void main(String[] args) { int count = 0; int n = 1; for (int i = 0; i < n; i++ ){ for(int j = n; j > i; j--){ count++; } } System.out.println(count); } 12345678910交换次数: n - 1 3. 直接插入排序: 比较最多: (n + 1) * n/2; 交换最多: (n + 1) * n/2;
106赞 (图解算法—希尔排序)希尔排序: 希尔排序是插入排序的变种, 逻辑间隔分组排序, 时间复杂度比较难算, 有一种分组(1, 5, 19, 41, …)的时间复杂度为O(n^1.3); 大大的有进步, 了不起
理论基础 —— 排序 —— 直接选择排序9赞 , 直接选择排序: 比选择排序还是要好一点的, 是在未排序的数组中比较, 但是时间复杂度仍然是O(n^2)
菜鸟, 快速排序讲的不好, 看不懂
快速排序——详细且简单易懂的讲解
1赞, 图看懂一些
快速排序—(面试碰到过好几次)
46赞 , 还是上一篇1赞的写的好一些
快速排序: 时间复杂度为O(n * log(n)), 取基准数来不断分割数组的一种排序(分治法的思想)
五分钟弄懂有点难度的排序:堆排序20赞, 堆排序利用完全二叉树的数据结构来排序, 分为大顶堆和小顶堆; 时间复杂度为O(n * log(n))
[图解] 归并排序42赞, 归并排序; 时间复杂度O(n * log(n)), 空间复杂度: O(n); 为稳定的排序法
【图解数据结构】 一组动画彻底理解基数排序2赞, 基数排序, 把数拆分成个位, 十位, 百位… 从个位到顶级位依次比较, 是一种稳定的排序算法, 时间复杂度为: O (nlog®m),其中r为所采取的基数,而m为堆数; 这里对基数和堆数的定义不明, 先放着
32赞, 比较好懂; 二叉查找树: 根节点比左叶子要大, 比右叶子要小; 查询的时间复杂度: O(log(n)), 极端不平衡的状态下时间复杂度为O(n); 中序遍历: 不懂
关于二叉树的前序、中序、后序三种遍历191赞, 中序遍历: 左节点 -> 根节点-> 右节点的遍历
30张图带你彻底理解红黑树 红黑树特性: 1.1. 根节点为黑色 1.2. 节点有两种可能颜色, 黑色; 红色; 1.3. 一个红黑树中, 任意根节点到叶子节点的路径上黑节点的数量相等 1.4. 根节点为nil时为黑色 1.5. 红色节点的两个子节点必然为黑色应用场景: TreeSet,TreeMap时间复杂度: O(log(n))2赞, 没用, 实在是他娘的看不懂
Java技术——你真的了解String类的intern()方法吗106赞
65赞, 有点复杂, java虚拟机分为
类加载器: 将.class文件加载到java执行时数据区, 类加载机制, 使用双亲委派模型执行引擎: 执行字节码, 或执行本地方法执行时数据区: 分为: 3.1. 只属于当前线程的私有区 __3.1.1. pc计数器: 存当前线程跑到哪儿了 __3.1.2. jvm栈: 局部变量表, 方法出口 __3.1.3. 本地方法栈: 为Native方法服务 3.2. jvm共享的公有区 __3.2.1. 堆: 存实例对象 __3.2.2. 方法区: 存.class(编译后的代码), 类信息 ____3.2.2.1. 运行时常量池: 存常量(编译期已可知的常量)Java虚拟机(JVM)你只要看这一篇就够了!
111赞, 太长了, 吃不消看; 前面部分讲的跟楼上是一样的
3赞, 太复杂, 看不懂
JavaWeb开发模式的发展历程5赞, 1. 纯servlet -> 2. 纯jsp -> 3. jsp + javaBean -> 4. jsp + javaBean + servlet (也就是MVC模式);
log4j, log4j2, jul, logback 都是日志的具体实现, 而common-logging(动态)和slf4j(静态)则是作为门面来使用
JAVA - 优雅的记录日志(log4j实战篇)16年的文章, 日志可记录在控制台, 文件, 数据库, 也可配置日志记录级别, 定时记录日志.
3赞, 每次请求连接数据库耗时大约为140ms, 而使用连接池耗时大约10-20ms
拜阮一峰大神, 用于加密通讯; 1.针对问题 = > 解决方法: __1.1. 窃听 => 加密传播 __1.2. 篡改 => 校验机制 __1.3. 冒充 => 身份证书 2. 握手增加到4次
17赞, 看不懂, 没用
一个Tomcat最多支持多少用户的并发?0赞, tomcat7默认使用bio, 默认并发150个线程; tomcat8之后默认使用nio, 基于缓冲区的io; 当并发超过250个时应考虑集群; apr是异步非阻塞, nio是同步非阻塞, bio是同步阻塞
分析http请求从浏览器到tomcat全过程2赞, 看不懂
Tomcat处理HTTP请求原理对上文一坨文字的解释, 做了一个图来表示, servlet作为最内层被包装的对象; 其他没看懂, 估计是做了层层处理
转载于:https://www.cnblogs.com/chaoyang123/p/11563012.html