导航:首页 > 编程语言 > java存储结构

java存储结构

发布时间:2023-07-24 21:04:22

1. java中有哪些数据结构

数据结构:
①数组 (Array)
在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数
据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组
元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指
针数组、结构数组等各种类别。
②栈 (Stack)
栈是只能在某一端插入和删除的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后
的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。
③队列 (Queue)
一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行
插入操作的端称为队尾,进行删除操作的端称为队头。队列中没有元素时,称为空队列。
④链表 (Linked List)
一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。
链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:
一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。
⑤树 (Tree)
树是包含n(n>0)个结点的有穷集合K,且在K中定义了一个关系N,N满足 以下条件:
(1)有且仅有一个结点 k0,他对于关系N来说没有前驱,称K0为树的根结点。简称为根(root)
(2)除K0外,k中的每个结点,对于关系N来说有且仅有一个前驱。
(3)K中各结点,对关系N来说可以有m个后继(m>=0)。
⑥堆 (Heap)
在计算机科学中,堆是一种特殊的树形数据结构,每个结点都有一个值。通常我们所说的堆的数据结构,是指
二叉堆。堆的特点是根结点的值最小(或最大),且根结点的两个子树也是一个堆。
⑦图 (Graph)
图是由结点的有穷集合V和边的集合E组成。其中,为了与树形结构加以区别,在图结构中常常将结点称为顶点,
边是顶点的有序偶对,若两个顶点之间存在一条边,就表示这两个顶点具有相邻关系。
⑧散列表 (Hash)
若结构中存在关键字和K相等的记录,则必定在f(K)的存储位置上。由此,不需比较便可直接取得所查记录。称
这个对应关系f为散列函数(Hash function),按这个思想建立的表为散列表。
差不多我就知道这些了~

2. JAVA数据结构有哪几种

数组、栈 、队列、链表、树、堆 、图、散列表 。

1:数组是计算机编程语言上,对于“Array”的中文称呼,是用于储存多个相同类型数据的集合。

2:栈是限定仅在表尾进行插入和删除操作的线性表,栈者,存储货物或供旅客住宿的地方,可引申为仓库、中转站,引入到计算机领域里,就是指数据暂时存储的地方,所以才有进栈、出栈的说法。

3:一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。

4:链表,一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。

5:哈希表,是根据关键码值而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。

3. 【JAVA】写一个类,实现栈这种数据结构,要求底层数据使用ArrayList存储。

栈的特点的就是后进先出,那么你就linkedList,如果要添加一个元素,就把他存到最后一个位置,要取一个元素,也从最后开始取就可以实现了,只有linkedList才有存,取,删最后一个元素这个方法,所以要要用linkedList
代码如下:
public
class
StudyTest
{
private
LinkedList
list
=
new
LinkedList
();
public
String
get()
{
return
list.getLast();
}
public
void
add(String
str)
{
this.list.addLast(str);
}
public
void
remove(){
this.list.removeLast();
}
}

阅读全文

与java存储结构相关的资料

热点内容
linux设备权限 浏览:950
pdf转曲软件 浏览:149
云服务器怎么做nas 浏览:457
有什么可以提示快递的app 浏览:311
什么app的主题都是免费的 浏览:1002
se01加密路线和普通路线放 浏览:908
怎么用安卓系统手机测量长度 浏览:46
回调突破主图源码 浏览:238
mc生存都市服务器地址大全 浏览:92
unix网络编程环境搭建 浏览:963
pythonsocket高并发 浏览:257
python开发windowsgui 浏览:619
25减9的借位算法 浏览:269
管家婆有必要加密狗吗 浏览:907
电脑文件夹没保存怎么恢复 浏览:148
买燕窝什么是溯源码 浏览:585
安卓党为什么我不用iphone 浏览:266
固态继电器单片机 浏览:980
反编译exe课件 浏览:58
gps测量加密法 浏览:960