JAVA开发葵花宝典.ppt
《JAVA开发葵花宝典.ppt》由会员分享,可在线阅读,更多相关《JAVA开发葵花宝典.ppt(25页珍藏版)》请在三一办公上搜索。
1、第19章 Java中的数据结构,上一章重点讲述了数据结构、数据结构接口的基本知识,主要是以理论加上少量的实例进行讲解。本章将继续上一章的内容,通过实例来进一步加深对数据结构的认识。本章的实例分析数据结构、各种不同类型的接口,以及这些结构的具体实现过程。,19.1 链表,如果把数组作为一种数据结构,可能对读者来说更容易理解。数组这种结构有一个很大的缺点,数组中的所有元素都按序排列,如果要删除其中一个元素,后面的所有元素都需要依次向前方移动一个位置。如果这个数组元素很多,那么依次移动的次数就会明显增多,从而耗费大量的系统资源。为了能够解决这个问题,数据结构引入了链表这个结构。下面将为读者讲述,有关
2、链表这种数据结构的定义和具体实现。,19.1.1 什么是Java中的链表,本节介绍一种新的数据结构:链表。在Java语言中,链表中的元素存储在一条链的节点上,不像数组是按序存储在一系列连续的空间中。仔细分析图19.1,读者会明白它们的区别所在。分析为什么链表作为一种数据结构比数组要好?如图19.2所示。(具体内容请参照本书),19.1.2 用程序代码段实现对链表的添加,下面演示一个有关操作链表中数据的实例,代码如下所示。(具体内容请参照本书),19.1.3 用程序代码段实现对链表的删除,下面再演示一个复杂的实例,其流程如图19.6所示。(具体内容请参照本书),19.2 数组列表类,数组列表类就
3、是数组的一个引申类,它继承了数组的特点,并且又在数组基础上有了自己所独特的优势。本节介绍如何使用数据列表类。,19.2.1 什么是数组列表类,数组的容量一旦被初始化设定好,就不可以再更改。这对于正在运行的程序来说,是一种缺陷。在程序设计过程中,经常会遇到一些不确定的因素,导致无法确定一个数组的容量。为了解决这个问题,Java程序语言引进了数组列表。数组列表就是一个可以动态变化容量的数组,其根据正在运行的程序的变化,随时改变数组的容量,以满足程序的需要。(具体内容请参照本书),19.2.2 通过实例熟悉数组列表如何存储数据,在举实例之前,先介绍ArrayList类的一些方法函数。(具体内容请参照
4、本书),19.3 散列表,前面介绍了链表和数组列表的知识,本节将介绍另一种数据结构:散列表。散列表跟链表和数组列表比起来,有什么不同?有什么优点,又有什么缺点呢?,19.3.1 什么是散列表,在链表和数组列表中,要想查找某个特定的元素,就必须从头开始遍历。如果一个链表或者一个数组列表拥有的元素数量很大,那么就需要耗费大量的系统资源,去遍历整个数据结构。如何克服这个弊病?此时,就引进了另一个数据结构:散列表。散列表通过“键值对应”的形式存储元素。它是一个无序的数据结构,跟链表和数组列表不同,链表和数组列表都是有序的数据结构。这种数据结构的最大缺点就是无法控制元素出现的顺序,但同时正是因为它的无序
5、,使得它可以快速查找特定的元素。(具体内容请参照本书),19.3.2 通过实例熟悉散列表如何存储数据,在举实例之前,先介绍散列表的构造器和常用的方法。只有了解这些方法,才能更好的应用散列表来存储数据。散列表的构造器代码如下所示:(具体内容请参照本书),19.4 散列集,上一节介绍了散列表,本节将介绍是散列集,两种数据结构只是一字之差。那么它们有什么区别?散列集又有什么可取之处呢?本节将通过实例来展示散列集的作用。,19.4.1 什么是散列集,散列表和散列集这两种数据结构,功能基本相同,不过它们实现的接口不一样。散列表实现的是MAP(映像)接口,而散列集实现了Set接口。另外,散列表是线性同步,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 开发 葵花宝典
链接地址:https://www.31ppt.com/p-6509795.html