一文了解Java中常见数据结构

一文了解Java中常见数据结构,第1张

 引言

当我们深入的学习Java的过程中,如果没有对数据结构做出深刻的了解的话,接下来的学习过程将会尤为的艰辛,但是当我们学习过了数据结构、清楚它的内核以后,在日后的学习过程中将会起到很大的帮助作用。因此今天给大家简单的讲解一下Java中常见的数据结构。

概述
  • 数据结构是计算机底层存储、组织数据的方式。是指数据相互之间是以什么方式排列在一起的
  • 通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率
     

 常见数据结构:

  • 队列
  • 数组
  • 链表
  • 二叉树
  • 二叉查找树
  • 平衡二叉树
  • 红黑树
栈和队列

栈的执行特点:

后进先出,先进后出

队列的执行特点:

先进先出,后进后出

数据从后端进入队列模型的过程称为:入队列;

数据从前端离开队列模型的过程称为:出队列; 

数组

数组是一种查询快、增删慢的模型

查询速度快∶查询数据通过地址值和索引定位,查询任意数据耗时相同。(元素在内存中是连续存储的)
删除效率低:要将原始数据删除,同时后面每个数据前移
 添加效率极低:添加位置后的每个数据后移,再添加元素

链表 

链表(单向链表和双向链表)的特点:

链表中的元素是在内存中不连续存储的,每个元素节点包含数据值和下一个元素的地址
 链表查询慢:无论查询哪个数据都要从头开始找

链表增删相对快

//双链表
public class LinkedList {
    transient Node first;
    transient Node last;
 
    private static class Node {
        E item;
        Node n;
        Node p;
 
        Node(Node p, E element, Node n) {
            this.item = element;
            this.n = n;
            this.p = p;
        }
    }
}

二叉树、二叉查找树 

 

 二叉树特点

只能有一个根节点,每个节点最多支持2个直接子节点

节点的度:节点拥有的子树的个数,二叉树的度不大于2叶子节点度为o的节点,也称之为终端结点

高度:叶子结点的高度为1,叶子结点的父节点高度为2,以此类推,根节点的高度最高。

层:根节点在第一层,以此类推

兄弟节点︰拥有共同父节点的节点互称为兄弟节点

 二叉查找树又称二叉排序树或者二叉搜索树

特点:

1,每一个节点上最多有两个子节点

2,左子树上所有节点的值都小于根节点的值

3,右子树上所有节点的值都大于根节点的值

目的:提高检索数据的性能

 创作不易,给个三连

 

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/920222.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存