摘要:
双向链表和单向链表相比更加灵活,它的每一个元素除了本身的值以为拥有两个指针,分别指向上一个和下一个节点。维护成本上要高于单向链表。链表的大部分操作依赖于遍历,这一方面双向链表会效率会好一些,可以根据查询下标的位置从而选择从链表头开始遍历还是从链表尾开始遍历。 package com.dfsn.clo 阅读全文
摘要:
单项链表和数组的最大区别是,数组在内存中的空间是连续的,如果要开辟一个数组一定要先找到空间大小够用的连续空间。而链表则不同,他的各个节点通过引用指向确定关联关系。 必须要有的一个头节点,在链表中做的大量操作都需要依赖头节点。尾节点则没有next。 package com.dfsn.cloud.eur 阅读全文
摘要:
咱不啰嗦队列的特性先进先出,直接上代码。 package com.dfsn.cloud.eureka; public class Queue<T> { private Object[] arr; private int size; private int pushIndex; private int 阅读全文
摘要:
稀疏数组可以看做是普通二维数组的压缩,为什么要对数组进行压缩呢?常见的场景是地图,棋盘。这些容器都是行和列组成的二维数组,在数组中的一些点上标记着特殊的位置。但是这些标记位相对于整个二维数组来说只使用了一小部分,数组中剩余的部分都是默认值。如果我们将一个地图存储到用户的磁盘中,会造成不必要的空间浪费 阅读全文
摘要:
准备条件魔数版本号常量池访问标志类索引,父类索引,接口索引集合字段表集合方法表集合属性表集合 准备条件 1 Hex Editor工具用于将Class文件转换成16进制字节 2 https://tool.oschina.net/hexconvert 16进制转换网站 3 http://www.bejs 阅读全文
摘要:
下文带/**/为源码注释//为个人注释。源代码使用这个颜色 Vector可以设置增量的集合add(e)扩容增量值得使用add(idx,e)末尾追加还是任意插入?set(idx,ele)替换数组元素get(idx)根据数组下标获取remove(idx)使用本地方法复制数组remove(obj)删除第一 阅读全文
摘要:
下文带/**/为源码注释//为个人注释。源代码使用这个颜色 Node对象存储元素和元素左右数据的指针add(e),我将我自己添加到上一个元素的Next addFirst(e)替换链表头addLast(e)替换链表尾add(index,ele) linkLast or linkBeforegetFir 阅读全文
摘要:
mysql的知识点远远没有这个文档里描述的这么肤浅。如果你需要,推荐你 极客时间丁奇的专题课程《MySQL实战45讲》 https://time.geekbang.org/column/intro/139 SQL的执行流程MySQL的索引结构索引覆盖EXPLAIN查询命令ICP索引下推锁的分类Red 阅读全文
摘要:
下文带/**/为源码注释//为个人注释。源代码使用这个颜色 无参数构造器初始化做了什么? add()添加元素做了什么? ArrayList如何扩容? 使用有参构造的必要性! get(int index)可能抛出两个异常! set(dex,ele)就是替换数组中对应下标的元素! remove(int 阅读全文
摘要:
SpringCloudNetflix概述 Eureka Eureka服务端配置eureka.client.service-url.defaultZone值的格式Eureak集群Eureka客户端配置定时续约和拉取注册表服务端的自我保护机制完整配置项手动清理已经关闭的服务远程关闭服务服务平滑上下线 R 阅读全文