Java面试之数据结构的简单介绍
来源:互联网 发布:linux tar命令安装 编辑:程序博客网 时间:2024/05/16 14:42
数据结构:就是一堆数据的存储方式.
1.数组:
列表:按照一定的线性顺序,排列而成的数据项的集合。
列表的两种主要表现是数组和链表
数组:有时候也称之为有序列表。
2.链表
链表linked:链式存储。通过地址“链”起来。
3.栈(Stack)
是一种特殊类型的列表。
缺点:限制了插入和删除的位置,只能在一端(尾部)进行
插入也叫进栈或压栈
删除也叫出栈或弹栈
实际应用:浏览器的“前进”和“后退”;很多软件的“撤销”和“恢复”
4.队列(Queue)
也是一种特殊类型的列表。
特点:先进先出,后进后出。
缺点:限制了插入和删除的位置,只能在一端(尾部)进行插入,在另一端(头部)进行删除
实际应用:客服电话排队等待、银行排号
5.散列表,也叫哈希表hashtable。是一种典型的非线性结结构。
查询时,根据关键码值(Key-value)而直接进行访问的数据。
是由:目录+链表组成。就像字典。
特点:元素无序。
6.树形结构是一种:
非线性数据结构。体现了“一对多”的树形关系,也是一类重要的数据结构。
在树形结构中,树根结点没有前驱结点,其余每个结点有且只有一个前驱结点。叶子结点没有后续结点,其余每个结点的后续节点数可以是一个也可以是多个。树形结构可表示从属关系、并列关系。
无序树(Unordered Tree):树中任意一个结点的各孩子结点之间的次序构成无关紧要的树。通常树指无序树。
有序树(Ordered Tree):树中任意一个结点的各孩子结点有严格排列次序的树。二叉树是有序树,因为二叉树中每个孩子结点都确切定义为是该结点的左孩子结点还是右孩子结点。
7.二叉树
是每个结点最多有两个子节点的有序树。
这两个子树有左右之分,分别称之为:“左子树”(left subtree)和“右子树”(right subtree)。
平衡二叉树(红黑树)指的是根节点左右两个子树的高度差不超过1,即左右几乎对称 。左子树上所有节点的值均小于或等于它的根节点的值,右子树上所有节点的值均大于或等于它的根节点的值。
- Java面试之数据结构的简单介绍
- java数据结构之单链表的简单实现
- 黑马程序员——Java中简单的数据结构介绍
- java面试之HashMap的实现原理和底层数据结构
- Java数据结构之简单的链表的实现
- Java数据结构之简单的连接点(link)实现
- mybatis配置的简单介绍(面试)
- Java的简单介绍
- java的简单介绍
- Java之DriverManager简单介绍
- Java之IntegerCache简单介绍
- 常用数据结构以及算法的简单介绍
- 数据结构--树(tree)的简单介绍
- Android面试之----Android系统架构图及简单的系统架构介绍
- Android面试之----Android系统架构图及简单的系统架构介绍 .
- Android面试之----Android系统架构图及简单的系统架构介绍
- Android面试之----Android系统架构图及简单的系统架构介绍
- Android面试之----Android系统架构图及简单的系统架构介绍分类:
- 欢迎使用CSDN-markdown编辑器
- read
- C++第二课 引用实例
- JAVA:避免重复的创建对象
- 关于upload产生神奇的%EF%BB%BF
- Java面试之数据结构的简单介绍
- vue2.0 Render函数 Render具体能做点什么 Render应用场景 Render在.vue无法使用
- 悼念512汶川大地震遇难同胞——老人是真饿了
- Ue4 BluePrint蓝图实现镜头(视角)切换及摆动范围(二)
- 调用方法
- Hibernate入门01_HelloWord
- HDOJ 1358 Period
- java int转byte出现负数 byte转int的解决
- Hive 安装 干货