黑马程序员——Java中简单的数据结构介绍
来源:互联网 发布:向日葵外贸大数据 编辑:程序博客网 时间:2024/06/05 18:21
栈与队列数据结构:
栈和队列是一种常见的数据结构,是两种非常重要的线性结构,也都是线性表,它们是操作受限的的线性表,有顺序栈、链式栈、链式队列和循环队列等形式。它们广泛应用在各种软件系统中。
队列可以看成是有2个口的集合一个口叫队头一个叫队尾,只能在对头进行删除操作,在队尾做插入。根据这样的操作。队列特点是先进先出。
堆栈可以看成是有1个口的集合,这个口叫栈顶。插入和删除操作只能在栈顶操作。根据这样的操作。堆栈的特点是是后进先出。
数组与链表数据结构:
数组属于顺序存储中,由于每个元素的存储位置都可以通过简单计算得到,所以访问元素的时间都相同(直接访问数组下标);链表属于数据的链接存储,由于每个元素的存储位置是保存在它的前驱或后继结点中的,所以只有当访问到其前驱结点或后继结点后才能够按指针访问到自己,访问任一元素的时间与该元素结点在链接存储中的位置有关。链表和数组是常用的两种数据存储结构,都能用来保存特定类型的数据。
链表存放的内存空间可以是连续的,也可以是不连续的,数组则是连续的一段内存空间。一般情况下存放相同多的数据数组占用较小的内存,而链表还需要存放其前驱和后继的空间。
链表的长度是按实际需要可以伸缩的,而数组的长度是在定义时要给定的,如果存放的数据个数超过了数组的初始大小,则会出现溢出现象
链表方便数据的移动而访问数据比较麻烦;数组访问数据很快捷而移动数据比较麻烦。链表和数组的差异决定了它们的不同使用场景,如果需要很多对数据的访问,则适合使用数组;如果需要对数据进行很多移位操作,则设和使用链表。
树型数据结构:
树结构分为好多种,这里只介绍简单的几种。
- 黑马程序员——Java中简单的数据结构介绍
- 黑马程序员——Java的简单介绍
- 黑马程序员——Java开发中IO流介绍
- 黑马程序员-java基础-IO流的简单介绍
- 黑马程序员---java中Timer类的介绍以及使用
- 黑马程序员---Java数据结构
- java中File类的简单使用-黑马程序员
- 黑马程序员——AWT,Frame创建窗口简单介绍
- 黑马程序员—TreeSet的介绍
- 黑马程序员--java集合的底层数据结构
- 黑马程序员——多线程--线程的创建方式和线程安全的简单介绍
- 黑马程序员———集合及其collection接口及其子类的简单介绍
- 黑马程序员—OC(关于OC的一些简单介绍及使用)
- 黑马程序员——JAVA之大话数据结构
- 黑马程序员——java中static关键字的应用
- 黑马程序员——java中对大数的处理
- 黑马程序员——java中字符串的常见操作
- 黑马程序员——Java中对象的继承
- const char * 和 char const * 和 char * const 区别
- InvalidateRect()与Invalidate()的用法(转)
- secureCRT中文乱码
- hbase伪分布式搭建
- 斩bnuoj 直线与矩形的交点
- 黑马程序员——Java中简单的数据结构介绍
- Linux 线程浅析
- UVALive - 4328 Priest John's Busiest Day 贪心
- 第六届蓝桥杯2015-省赛-C语言大学B组 个人题解
- SeaJS入门教程系列之SeaJS介绍(一)
- 数据库原理第三章习题作业
- 黑马程序员_日记38_LinkedList建立堆栈练习
- 黑马程序员:iOS基础——个人笔记(三)
- SeaJS入门教程系列之使用SeaJS(二)