数据结构与算法
数据结构与算法
又菜又爱玩٩( ö̆ ) و
人菜就要多学习
展开
-
散列表
内容整理自《数据结构与算法之美》整理:原创 2020-03-26 10:44:50 · 133 阅读 · 0 评论 -
树
内容整理自《数据结构与算法之美》整理:原创 2020-03-24 16:00:00 · 116 阅读 · 0 评论 -
跳表
内容整理自《数据结构与算法之美》整理:原创 2020-01-16 09:58:21 · 143 阅读 · 0 评论 -
队列
内容整理自《数据结构与算法之美》整理:有关队列在线程池和并发中的应用请查看:Java线程池以及Executor框架以及Java并发容器。代码示例:基于数组的顺序队列package queue;/** * @Author: ZhangLu * @Date: 2019/12/30 10:11 * @Description: * 基于数组的...原创 2019-12-31 14:03:11 · 116 阅读 · 0 评论 -
栈
内容整理自《数据结构与算法之美》整理:思考:1.为什么函数调用要用“栈”来保存临时变量呢?函数调用的执行顺序符合后进者先出,先进者后出的特点。不一定非要用栈来保存临时变量,只是栈是最合适的选择。2.那 JVM 里面的“栈”跟我们这里说的“栈”是不是一回事呢?如果不是,那它为什么又叫作“栈”呢?不是一回事,一个是内存空间,一个是数据结构,但是都符合先进后出的特性...原创 2019-12-30 10:01:05 · 141 阅读 · 0 评论 -
链表
内容整理自《数据结构与算法之美》整理:思考:1.“数组简单易用,在实现上使用的是连续的内存空间,可以借助 CPU 的缓存机制,预读数组中的数据,所以访问效率更高。而链表在内存中并不是连续存储,所以对 CPU 缓存不友好,没办法有效预读。” 这里的CPU缓存机制指的是什么?为什么就数组更好了?转载自《数据结构与算法之美》的置顶评论CPU在从内存读取数据的时候,会先把...原创 2019-12-25 11:55:39 · 177 阅读 · 1 评论 -
数组
内容整理自《数据结构与算法之美》整理:思考:1.JVM 的标记清除垃圾回收算法的核心理念分为标记和清除两个阶段进行处理内存中的对象,在垃圾收集时会先标记出需要回收的对象,标记完成后统一回收所有被标记的对象。会产生空间碎片问题,垃圾回收后的空间不是连续的,不连续的内存空间的工作效率要低于连续的内存空间。2.二维数组的内存寻址公式对于 m * n 的数组,a [ i ]...原创 2019-12-24 10:04:25 · 121 阅读 · 0 评论 -
复杂度分析
内容整理自《数据结构与算法之美》整理:思考:分析下面这个 add() 函数的时间复杂度// 全局变量,大小为10的数组array,长度len,下标i。int array[] = new int[10]; int len = 10;int i = 0;// 往数组中添加一个元素void add(int element) { if (i >= l...原创 2019-12-23 17:44:03 · 154 阅读 · 0 评论