H__D  

2021年6月17日

摘要: 一、堆介绍 堆是具有以下性质的完全二叉树: 每个结点的值都大于或等于其左右孩子结点的值, 称为最大堆(大顶堆), 每个结点的值都小于或等于其左右孩子结点的值, 称为最小堆(小顶堆), 注意 : 没有要求结点的左孩子的值和右孩子的值的大小关系。 完全二叉树:一棵深度为 k 的有 n 个结点的二叉树,对 阅读全文
posted @ 2021-06-17 19:13 H__D 阅读(335) 评论(0) 推荐(0) 编辑
 
摘要: 一、二叉树介绍 简单地理解,满足以下两个条件的树就是二叉树: 本身是有序树; 树中包含的各个节点的度不能超过 2,即只能是 0、1 或者 2; 二、二叉树的性质 经过前人的总结,二叉树具有以下几个性质: 二叉树中,第 i 层最多有 2i-1 个结点。 如果二叉树的深度为 K,那么此二叉树最多有 2K 阅读全文
posted @ 2021-06-17 18:18 H__D 阅读(596) 评论(0) 推荐(0) 编辑
 
摘要: 一、树的介绍 树结构是一种非线性存储结构,存储的是具有“一对多”关系的数据元素的集合。 图是使用树结构存储的集合 {A,B,C,D,E,F,G,H,I,J,K,L,M} 的示意图。对于数据 A 来说,和数据 B、C、D 有关系;对于数据 B 来说,和 E、F 有关系。这就是“一对多”的关系。 将具有 阅读全文
posted @ 2021-06-17 17:49 H__D 阅读(666) 评论(0) 推荐(0) 编辑
 
摘要: 哈希表介绍 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 通常,我们把这个关键字称为 Key,把对应的记录称为  阅读全文
posted @ 2021-06-17 12:14 H__D 阅读(310) 评论(0) 推荐(0) 编辑
 
摘要: 一、查找算法介绍 顺序(线性)查找 二分查找/折半查找 插值查找 斐波那契查找 二、线性查找 编写线性查找算法代码 1 public class SeqSearch { 2 3 public static void main(String[] args) { 4 int[] arr = { 1, 2 阅读全文
posted @ 2021-06-17 11:57 H__D 阅读(161) 评论(0) 推荐(0) 编辑
 
摘要: 环境准备 Jdk:1.8.0_181 Idea:2021.1.1 Community Edition(社区版) Maven:3.6.3 1、下载Netty源码 本例下载的是 netty-4.1.63.Final 2、使用Idea打开项目,进行编译 导入Idea:File --> Open --> 选 阅读全文
posted @ 2021-06-17 03:15 H__D 阅读(1465) 评论(0) 推荐(0) 编辑
 
摘要: 本例介绍Netty基本服务端和客户端 一、服务端Netty的工作架构 二、Netty服务端 代码如下: 1、NettyServer.java 服务端主类 1 public class NettyServer { 2 3 public static void main(String[] args) t 阅读全文
posted @ 2021-06-17 02:52 H__D 阅读(1877) 评论(0) 推荐(0) 编辑
 
摘要: 一、Netty简介 Netty是由JBOSS提供的一个java开源框架,现为 Github上的独立项目。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 也就是说,Netty 是一个基于NIO的客户、服务器端的编程框架,使用Netty 可 阅读全文
posted @ 2021-06-17 02:50 H__D 阅读(3266) 评论(0) 推荐(0) 编辑