技术理论
文章平均质量分 74
技术理论
ShyTan
安安分分干活,认认真真做事,求稳,挣多少钱是多呀,还是想想怎么抽空出去游玩吧
展开
-
JDK7和JDK8差异与堆和方法区探索
1. 方法区从线程的角度来看运行时数据区:创建对象各数据区域的声明:方法区理解元空间、永久代是方法区具体的落地实现。方法区看作是一块独立于Java堆的内存空间,它主要是用来存储所加载的类信息的????【oracle官方文档】The Structure of the Java Virtual Machine《Java虚拟机规范》中明确说明:“尽管所有的方法区在逻辑上是属于堆的一部分,但些简单的实现可能不会选择去进行垃圾收集或者进行压缩”。对HotSpot而言,方法区还转载 2021-09-26 16:13:08 · 1094 阅读 · 2 评论 -
哈夫曼编码(理解)
基础理解什么是哈夫曼树(Huffman Tree)给定N个带权值的叶子节点,如何构造出一个带权路径最小的二叉树?在数据结构理论中,哈夫曼树又称为最优树,相关的知识点还有哈弗曼编码等。在正式介绍哈夫曼树之前,需要知道下面的知识点:(1)节点路径按照规定,将树中一个节点到另一个节点所经历的分支,称为节点路径,比如上图中节点A到节点E的路径为ABE。(2)路径长度根据上述“节点路径”的定义,将路径上的分支总数称为路径长度,比如上图中节点A到节点E的路径长度为2。...转载 2021-08-18 20:21:31 · 22768 阅读 · 0 评论 -
图的深度优先遍历与广度优先遍历
深度优先遍历简称DFS(Depth First Search),广度优先遍历简称BFS(Breadth First Search),它们是遍历图当中所有顶点的两种方式。我们来到一个游乐场,游乐场里有11个景点。我们从景点0开始,要玩遍游乐场的所有景点,可以有什么样的游玩次序呢?深度优先遍历二叉树的前序、中序、后序遍历,本质上也可以认为是深度优先遍历。第一种是一头扎到底的玩法。我们选择一条支路,尽可能不断地深入,如果遇到死路就往回退,回退过程中如果遇到没探索过的支路,就进入该支路继续.转载 2021-04-21 17:05:10 · 2273 阅读 · 0 评论 -
拓扑排序及算法实现
一、拓扑排序概念对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边<u,v>∈E(G),则u在线性序列中出现在v之前。通常,这样的线性序列称为满足拓扑次序(Topological Order)的序列,简称拓扑序列。 简单的说,由某个集合上的一个偏序得到该集合上的一个全序,这个操作称之为拓扑排序。二、理解在一个有向图中,对所有的节点进行排序,要求没有一个节点指向它前面的节点。...原创 2021-04-21 17:02:20 · 11011 阅读 · 0 评论 -
树和遍历(先、中、后)
一、树1、树的概念不包含回路的连通无向图(简单的非线性结构)一棵树中任意两个结点有且仅有唯一的一条路径连通 一棵树如果有n个结点,那它一定恰好有n-1条边 在一棵树中加一条边将会构成一个回路 树中有且仅有一个没有前驱的结点称为根结点2、结点树中的每个点称为结点,3、根结点没有父结点的结点4、叶结点没有子结点的结点5、内部结点一个结点既不是根结点也不是叶结点6、深度指从根结点到这个结点的层数,根结点为第一层(比如上图左边的树的4号结点深度是3)二原创 2021-04-21 16:37:50 · 539 阅读 · 0 评论 -
关于年轻代和年长代和溢出的简单解释
简单的来说 java的堆内存分为两块:permantspace(持久带) 和 heap space。持久带中主要存放用于存放静态类型数据,如 Java Class, Method 等,与垃圾收集器要收集的Java对象关系不大。而heapspace分为年轻带和年老带解释:年轻代的垃圾回收叫Young GC,年老代的垃圾回收叫Full GC。在年轻代中经历了N次(可配置)垃圾回收后仍然存活的...原创 2018-07-14 16:47:39 · 1632 阅读 · 0 评论 -
JVM中垃圾回收
JVM中垃圾回收分为scanvenge gc和full GC1,新生代:(1)所有对象创建在新生代的Eden区,当Eden区满后触发新生代的Minor GC,将Eden区和非空闲Survivor区存活的对象复制到另外一个空闲的Survivor区中。(2)保证一个Survivor区是空的,新生代Minor GC就是在两个Survivor区之间相互复制存活...原创 2018-07-13 21:08:17 · 883 阅读 · 0 评论 -
java相关的超全思维导图
迷茫了?看看这个图,哪里不会查哪里,让你走向人生巅峰转自:https://www.cnblogs.com/linanana/p/13659169.html转载 2021-02-07 11:44:24 · 123 阅读 · 0 评论 -
十大经典排序动图理解(含java代码实现)
图文加代码,一下就懂的十大经典排序转载 2020-11-05 14:55:27 · 242 阅读 · 0 评论 -
List、Set、Map等Java集合类
开局几张图,内容全靠编=。=!list与Set、Map区别及适用场景1、List,Set都是继承自Collection接口,Map则不是2、List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的,加入Set的Object必须定义...原创 2018-08-05 20:10:28 · 1133 阅读 · 0 评论 -
java数据结构知识点
数据结构 由 逻辑结构+存储结构 组成逻辑结构:数据元素间抽象化的相互关系,即抽象结构 存储结构:在计算机存储器中的存储形式,即物理结构逻辑结构的分类:按逻辑结构分为:(线性结构、非线性结构) 逻辑结构的四种基本形态: 数据元素间没任何关系——集合 数据元素间有线性关系——线性结构(所谓线性关系:除第一个元素外,其他元素有且只有一个前驱;除最后一个元素外,其他元素有且只有一个后继!) 数据元素间有层次关系——树结构 数据元素间有网状关系——图结构 常用的线性结构:线性...原创 2021-02-04 10:27:16 · 370 阅读 · 2 评论 -
数据结构:八大数据结构分类及图解
本文目录:数据结构分类 1、数组 2、栈 3、队列 4、链表 5、树 6、散列表 7、堆 8、图数据结构分类数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成 。常用的数据结构有:数组,栈,链表,队列,树,图,堆,散列表等,如图所示:每一种数据结构都有着独特的数据存储方式,下面为大家介绍它们的结构和优缺点。1、数组数组是可以再内存中连续存储多个元素的结构,在内存中的分配也是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。转载 2020-11-04 22:21:47 · 3030 阅读 · 0 评论 -
RSA非对称加密算法概述
非对称加密算法-RSA算法 加密算法分为对称加密算法和非对称加密算法,其中非对称加密算法作为计算机通信安全的基石,在保证数据安全方面起着重要的作用。而相对于对称加密算法的易理解性,非对称加密算法存在一定的难度。下面通过对RSA算法的剖析,让我们更好的理解非对称加密算法的原理。一、对称加密算法和非对称加密算法1、对称加密算法 对称加密算法:加密和解密都使用同样规则(密钥)的算法。 (1)、A选择某一种规则对信息进行加密; (2)、B使用同一规则(逆规则)对信息进行解密;2、转载 2020-08-24 16:30:54 · 757 阅读 · 1 评论 -
什么是AES对称加密算法
个人博客请访问http://www.x0100.top小明:老师,请问了解AES算法吗?老师:了解一些,AES算法是典型的【对称加密算法】小明:我不太明白,这个对称加密是什么鬼?它跟MD5,SHA这样的哈希摘要算法有什么不同?老师:对称加密不同于信息摘要,是真正意义上的加密算法。我们来看看下面这个例子:假设有一个发送方在向接收方发送消息。如果没有任何加密算法,接收方接收的是一个明文消息“我是小明”如果消息被中间人截获到,即使中间人无法篡改信息,也可以窥探到信息内容,从而暴露...转载 2020-08-24 16:26:48 · 936 阅读 · 0 评论 -
二元查找树
二元查找树: 它首先要是一棵二元树,在这基础上它或者是一棵空树;或者是具有下列性质的二元树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值; (3)左、右子树也分别为二元查找树...原创 2018-07-10 13:36:00 · 1460 阅读 · 0 评论 -
树和二叉树的关系
树的先序对应二叉树的先序树的后序对应二叉树的中序原创 2018-07-10 14:25:34 · 3967 阅读 · 0 评论 -
常见软件工程开发周期模型解析
常见的过程模型有瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型等。1.瀑布模型 1.必须等前一阶段的工作完成之后,才能开始后一阶段的工作; 2.前一阶段的输出文档就是后一阶段的输入文档,因此,只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。2.快速原型模型 所谓快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功...原创 2018-07-10 20:35:59 · 1138 阅读 · 0 评论 -
二叉树的基本性质总结
现将二叉树的基本性质总结如下:二叉树的性质性质1 :在二叉树的第i层上至多有2i-1 个结点(i≥1)。(数学归纳法可证)性质2 :深度为k的二叉树最多有2k-1个结点(k≥1)。(由性质1,通过等比数列求和可证)性质3 :一棵二叉树的叶子结点数为n0 ,度为2的结点数为n2 ,则n0 = n2 + 1。性质4 :具有n个结点的完全二叉树的深度为floor(log2n) + 1 。性质5 :如果对...原创 2018-07-10 10:07:20 · 1855 阅读 · 0 评论