学习
文章平均质量分 92
weixin_44058809
这个作者很懒,什么都没留下…
展开
-
数据结构学习,递归、二分搜索树(java语言)
数据结构学习,递归、二分搜索树(java语言)1.递归1.1递归的宏观涵义1.2链表中的递归2.二分搜索树(Binary Search Tree)2.1二分搜索树的基础2.2向二分搜索树中添加元素2.3二分搜索树的查询操作2.4二分搜索树的三种深度优先的遍历方式2.4.1前序遍历2.4.2中序遍历2.4.3后序遍历2.5二分搜索树的层序遍历2.6删除二分搜索树中的元素2.6.1删除最大最小元素2....原创 2019-01-24 12:46:42 · 212 阅读 · 0 评论 -
IntelliJ IDEA 配置Maven
IntelliJ IDEA 配置Maven1.下载Maven2.配置Maven本地仓库3.配置环境变量4.在IDEA中修改配置1.下载Maven到maven官网下载:http://maven.apache.org/download.cgi2.配置Maven本地仓库先将maven解压出来,并创建一个本地仓库LocalWarehouse打开配置文件将localRepository拷...原创 2019-03-17 11:24:26 · 276 阅读 · 0 评论 -
数据结构学习,哈希表(HashTable)(java语言)
数据结构学习,2-3树与红黑树(java语言)1.什么是哈希表2.哈希函数的设计2.1整型2.2大整数2.3浮点型2.4字符串2.5复合型3.哈希冲突4.哈希冲突的解决方法4.1链地址法:4.2开放地址法4.2.1线性探测4.2.2二次探测4.3.3再哈希法5.总结1.什么是哈希表散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是...原创 2019-03-16 19:53:15 · 653 阅读 · 0 评论 -
数据结构学习,2-3树与红黑树(java语言)
数据结构学习,2-3树与红黑树(java语言)1.‘2-3’树1.1 什么是‘2-3树’1.2 ‘2-3树’如何保持绝对平衡?2.红黑树2.1红黑树的性质2.2红黑树与‘2-3’树的等价关系2.3左旋转2.4flipColors(颜色翻转)2.5右旋转2.6左旋转、右旋转、颜色翻转的关联性2.7向红黑树中添加节点3.红黑树的复杂度分析4.总结1.‘2-3’树1.1 什么是‘2-3树’2-3树...原创 2019-03-14 18:51:07 · 619 阅读 · 0 评论 -
数据结构学习,并查集(UnionFind)(java语言)
数据结构学习,并查集(UnionFind)(java语言)1.什么是并查集2.并查集基础3.Quick Find并查集4.Quick Union并查集5.UnionFind的size优化6.UnionFind的rank优化7.路径压缩8.路径压缩②9.总结1.什么是并查集并查集可以抽象的看成是储存数据所在的集合的一种数据结构,它可以将不同元素放在一个集合中,也可以轻易的查询两个元素是否在同一个...原创 2019-02-03 21:39:13 · 320 阅读 · 0 评论 -
数据结构学习,Trie(字典树,前缀树)(java语言)
数据结构学习,Trie(字典树,前缀树)(java语言)1.Trie基础2.添加操作3.查询操作4.前缀查询5.总结1.Trie基础Trie是一种树形结构,是一颗多叉树,如果我们实现树中只存储26个字母,那这颗树就是26叉树。如上图,不过它的值并不是储存在树的节点中,由于使用Map(映射)结构,而且不论在新增操作还是查询操作时,我们都会提前知道所要插入/修改的单词的字母,所以将其放入Map...原创 2019-02-02 23:10:47 · 329 阅读 · 0 评论 -
数据结构学习,堆(Heap)和优先队列(PriorityQueue)(java语言)
数据结构学习,堆(Heap)和优先队列(PriorityQueue)(java语言)1.堆(Heap)1.1向堆中添加元素1.2查看堆中的最大元素1.3取出堆中最大元素1.4Replace 和 Heapify2.优先队列(PriorityQueue)3.总结1.堆(Heap)二叉堆是一颗完全二叉树,其满足以下性质:1.父节点的值大于子节点的值2.对于除了根节点以外的每个节点的父节点都为(...原创 2019-01-27 13:31:49 · 516 阅读 · 0 评论 -
数据结构学习,栈和队列以及链表(java语言)
数据结构学习,栈和队列以及链表(java语言)1.栈(Stack)1.1数组栈(ArrayStack)1.2链表栈(LinkedListStack)2.队列(Queue)2.1数组队列(ArrayQueue)2.2循环队列(LoopQueue)2.3链表队列(LinkedListQueue)3.链表3.1链表的基础结构3.2链表的初始化3.2链表的插入与删除操作4.总结1.栈(Stack)栈是...原创 2019-01-22 11:45:22 · 478 阅读 · 2 评论 -
数据结构学习,数组(java语言)
数据结构学习day1,数组1.安装itellij idea2.了解什么是数据结构以及算法3.java中的数组4.自己封装的数组4.1新增操作4.2查找操作4.3更新操作4.4检查数组中是否有元素e4.5查找数组中的元素e并返回下标(下标不存在时返回-1)4.6删除数组元素5.使用泛型6.将数组升级成为动态数组(可自动扩容缩容)1.安装itellij idea2.了解什么是数据结构以及算法数据...原创 2019-01-21 09:01:52 · 226 阅读 · 0 评论 -
数据结构学习,集合(Set)和映射(Map)(java语言)
数据结构学习,集合和映射(java语言)1.集合(Set)1.1基于二分搜索树的集合1.2基于链表的集合2.映射(Map)2.1基于链表的映射2.2基于二分搜索树的映射3.总结1.集合(Set)集合中不包含重复的元素,所以我们经常利用集合来去重首先给集合定义以下接口public interface Set<E> { void add(E e); void rem...原创 2019-01-25 11:55:34 · 193 阅读 · 0 评论 -
数据结构学习,AVL树(java语言)
数据结构学习,AVL树(java语言)1.AVL树基础2.AVL树的实现2.1底层2.2平衡因子的引入2.3平衡需要维护的时机2.3.1右旋转(LL情况)2.3.2左旋转(RR情况)2.3.3LR和RL2.4插入时的平衡维护2.5删除时的平衡维护3.总结1.AVL树基础AVL树是一种自平衡的二叉树,AVL树得名于它的发明者G. M. Adelson-Velsky和E. M. Landis,他们...原创 2019-03-13 12:46:39 · 182 阅读 · 0 评论