2021年9月28日

数据结构——5、树——1、二叉树

摘要: 1.1.1 *二叉树* 1.1.1.1 *二叉树特点* 1、 每个节点最多有两个子树,所以二叉树不存在度小于2的节点 2、 左子树和右子树是有顺序的,次序不能任意颠倒 3、 即使树中某节点只有一个子树,也要区分它是左子树,还是右子树 1.1.1.2 *二叉树代码* 考察是否会写递归:即在方法中调用自 阅读全文

posted @ 2021-09-28 10:22 夜萤火虫和你 阅读(160) 评论(0) 推荐(0) 编辑

2021年9月27日

数据结构——4、散列表

摘要: 1.1.1 *散列表* 散列表,即哈希表,这种数据结构提供了key和value的映射关系,在jdk中也叫做entry,只要给出一个key,就能查找出相应的value,查找的时间复杂度接近于O(1) 散列表本质上也是一个数组,数组是根据角标来查找元素的,散列表是根据key来查找元素的,且key以str 阅读全文

posted @ 2021-09-27 10:15 夜萤火虫和你 阅读(149) 评论(0) 推荐(0) 编辑

数据结构——3、栈和队列

摘要: 1.1.1 *栈和队列* 1.1.1.1 *结构图* 数组和链表可以看成数据存储的物理结构 栈和队列可以看成数据存储的逻辑结构,可以利用数组进行实现,也可以利用链表进行实现 栈:先入后出,包括栈底和栈顶 不管是出栈还是入栈,时间复杂度都是O(1) 队列:先入先出,包括队头和队尾 循环队列:用数组的方 阅读全文

posted @ 2021-09-27 10:14 夜萤火虫和你 阅读(237) 评论(0) 推荐(0) 编辑

数据结构——2、链表

摘要: 1.1.1 *链表* 1.1.1.1 *内存中的链表结构* 链表是一种在物理上非连续、非顺序的数据结构,由若干node节点组成 链表包括单向链表和双向链表 单向链表包括两部分:存放数据的变量data;指向下一个节点的指针next 链表的第一个节点被称为头结点,最后一个节点被会成为尾节点,尾节点的ne 阅读全文

posted @ 2021-09-27 10:13 夜萤火虫和你 阅读(157) 评论(0) 推荐(0) 编辑

2021年9月24日

数据结构——1、数组

摘要: 1.1.1 *数组* 1.1.1.1 *内存中的数组结构* 数组是:有限个相同类型的变量所组成的有序集合,数组中的每一个变量被称为元素 数组的一个特点:在内存中顺序存储 数组在内存中是如何进行顺序存储的 内存是由一个一个连续的内存单元组成的,每一个内存单元有自己的地址,数组中的每一个元素,都存储在内 阅读全文

posted @ 2021-09-24 09:54 夜萤火虫和你 阅读(140) 评论(0) 推荐(0) 编辑

2021年9月23日

Java——http——2、三次握手和四次挥手

摘要: 1.1.1 *三次握手和四次挥手* TCP 三次握手就好比两个人在街上隔着50米看见了对方,但是,因为雾霾等原因不能100%确认,所以,要通过招手的方式,相互确定对方是否认识自己。 我们看到这个过程中一共是四个动作,招手–点头微笑–招手–点头微笑。其中连续进行了2个动作,先是点头微笑(回复对方),然 阅读全文

posted @ 2021-09-23 10:26 夜萤火虫和你 阅读(284) 评论(0) 推荐(0) 编辑

2021年9月22日

java——http——1、http的连接过程

摘要: 1.1.1 *TCP连接的过程* 输入一个网址之后客户端服务端之间发生了什么……推荐《图解HTTP》 当你在浏览器中输入一个网址,浏览器的处理过程如下: 1、浏览器查找该域名的 IP 地址 2、TCP建立连接 3、浏览器根据解析得到的IP地址向web服务器发送一个 HTTP 请求:三次握手 4、服务 阅读全文

posted @ 2021-09-22 10:47 夜萤火虫和你 阅读(913) 评论(0) 推荐(0) 编辑

2021年9月18日

Java——ConcurrentHashMap

摘要: 1.1 *ConcurrentHashMap* 1.1.1 *ConcurrentHashMap的并发度是什么?* ConcurrentHashMap把实际map划分成若干部分来实现它的可扩展性和线程安全。这种划分是使用并发度获得的,它是 ConcurrentHashMap类构造函数的一个可选参数, 阅读全文

posted @ 2021-09-18 11:01 夜萤火虫和你 阅读(1461) 评论(0) 推荐(0) 编辑

Java——HashMap——3、高并发下的HashMap

摘要: 1.1.1 *高并发下的HashMap* 1.1.1.1 *rehash操作* 随着操作的不断执行, 哈希表保存的键值对会逐渐地增多或者减少, 为了让哈希表的负载因子(load factor)维持在一个合理的范围之内, 当哈希表保存的键值对数量太多或者太少时, 程序需要对哈希表的大小进行相应的扩展或 阅读全文

posted @ 2021-09-18 10:59 夜萤火虫和你 阅读(168) 评论(0) 推荐(0) 编辑

Java——HashMap——2、HashMap的工作原理

摘要: 1.1.1 *HashMap的工作原理* HashMap是键值对key-value形式双列集合。它的底层存储原理是哈希表。为了简明描述哈希表(数组+链表),我画了一个图 1)E*代表一个Node节点,每个Node节点就是我们理解的一个key-value的mapping映射。 2)每个Node除了保存 阅读全文

posted @ 2021-09-18 10:57 夜萤火虫和你 阅读(224) 评论(0) 推荐(0) 编辑

导航