数据结构与算法
文章平均质量分 97
Croatoanlus
这个作者很懒,什么都没留下…
展开
-
java实现二叉树的前序、中序、后序以及层序遍历
java实现二叉树的前序、中序、后序以及层序遍历前言:本文主要探究二叉树遍历的算法,关于二叉树的基础知识可以去看我的这篇文章:《JAVA实现平衡二叉树(AVL)》数据构建我们先来构建一颗二叉树的基本模型先序遍历规则:先根再左后右(所有子系也遵循该规则)顺序:ABDGEHCF作用:在第一次遍历到节点时就执行操作,一般只是想遍历执行操作(或输出结果)可选用先序遍历。流程图递归实现/** * 前序遍历-递归 * 顺序:根-左-后 * * @param node */publ原创 2021-09-07 23:08:36 · 685 阅读 · 0 评论 -
HashMap元素的插入流程以及扩容操作
数据结构与算法之HashMap1.元素的存取流程1.hash函数前言本文主要探讨HashMap计算下标使用到的算法,对于HashMap的其它知识不做详细概述,有关HashMap的简单介绍可以看这篇文章《HashMap的构成与大小的确定》。1.元素的存取流程以Java8为参考,HashMap插入元素的流程为:判断当前容量大小是否为空,如果为空(未设置容量初始值),则把容量扩充为16。获取key的hashCode,对hashCode进行扰动处理,计算出元素的下标。根据下标判断有无hash碰撞,如原创 2021-08-13 01:52:07 · 3909 阅读 · 2 评论 -
HashMap的构成与大小的确定
数据结构与算法之HashMap1.hashMap如何构建大小2.hashMap是什么时候开始申请大小的3.自定义hashMap该如何设置大小1.hashMap如何构建大小2.hashMap是什么时候开始申请大小的3.自定义hashMap该如何设置大小...原创 2021-08-07 19:21:42 · 1235 阅读 · 0 评论 -
JAVA实现平衡二叉树(AVL)
数据结构与算法-平衡二叉树(AVL) 1.平衡二叉树简介1.1什么是平衡二叉树1.2平衡二叉树的作用2.关键词概述3.JAVA代码实现3.1节点类(TreeNode)前言本文主要探讨平衡二叉树的实现过程,对于原理还请自行翻阅其它资料进行学习1.平衡二叉树简介1.1什么是平衡二叉树了解平衡二叉树之前我们首先需要知道什么是树结构. 树结构树是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。树的定义:把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它原创 2021-08-05 12:37:54 · 4751 阅读 · 0 评论 -
String源码中的hashCode算法
学习String源码中的hashCode算法目录1.hashCode的作用2.了解二进制计算符3.String源码hashCode算法的实现目录1.hashCode的作用2.了解二进制计算符<< : 左移运算符,num << 1,相当于num乘以2 低位补0>> : 右移运算符,num >> 1,相当于num除以2 高位补0>>> : 无符号右移,忽略符号位,空位都以0补齐 % : 模运算 取余^ : 位异或 第一个原创 2021-08-05 01:51:58 · 2340 阅读 · 0 评论