
数据结构
文章平均质量分 80
kingmicrosoft
这个作者很懒,什么都没留下…
展开
-
数据结构基础:数组和链表
在了解基本的数据结构基础之前,理解抽象数据类型(ADT)的概念很有必要. Java 2软件开发包(SDK)提供了一些新类来支持大多数常用的ADT。这些类被称为Java集合类(类似于MFC中的集合类),它们协同工作从而形成Java 集合架构。这个集合架构提供了一套将数据表示成所谓的集合抽象数据的接口和类。 当我们谈论ADT的时候,经常会说到线性表,堆栈和队列。为什么它们被称为ADT?原创 2015-11-05 21:23:26 · 1545 阅读 · 0 评论 -
数据结构基础:栈和队列
栈和队列都属于抽象数据类型, 所以放到一起.1. stackstack很熟悉的一个地方就JVM的虚拟机栈.我们知道, 在JVM里面的栈区, Java虚拟机栈(Java Virtual Machine Stacks)是线程私有的,它的生命周期与线程相同。虚拟机栈描述的是Java方法执行的内存模型:每个方法被执行的时候都会同时创建一个栈帧(Stack Frame)用原创 2015-11-08 18:54:46 · 687 阅读 · 0 评论 -
数据结构基础:哈希表(HashMap)原理分析
前言: 数组的特点是:寻址容易,插入和删除困难; 链表的特点是:寻址困难,插入和删除容易;我们可以构造一种结合两种优点的“链表散列”的数据结构,可以理解为链表的数组,HashMap就是基于其实现的。 1.哈希表的缺点有和优点优点:相对数组可以节省存储空间;插入和寻址都很快;在散列表中,查找一个元素的时间和链表中是相同的,都为O(n),但是在实践中散列表效率是原创 2015-11-12 21:57:30 · 905 阅读 · 0 评论 -
数据结构基础:二叉树,堆,多叉树
二叉树是结合了数组和链表的优点和缺点(数组插入效率低,链表查找效率低)二叉树的存储结构一般采用二叉链表,树中每一个结点都有一个数据域data还有两个分别用于指向该节点的左右儿子结点的指针域,通过这两个指针域建立了上下层结点的关系.二叉树的一些特性就不详细说了,很多资料都有,直接看看典型的二叉树.二叉查找树二叉查找树是满足以下条件的二叉树:1.左子树上的所有节点值均小于根原创 2015-11-05 22:19:01 · 4803 阅读 · 0 评论