【数据结构】第1天之Java中的数据结构

前言

众所周知,程序=数据结构+算法,可见数据结构的重要性。

在Java中,数据结构通常指的是Java集合框架中的类和接口。

Java集合框架提供了一套标准的数据结构,例如列表、集合、映射表等,以及相应的实现类。

今天要分享的文章是:Java中的数据结构。

数据结构

定义

  • 百度百科解释
  • 维基百科解释

研究对象

  • 数据逻辑结构

    • 集合
    • 线性结构
    • 树形结构
    • 图形结构
  • 数据存储结构

分类

  • 线性结构
  • 非线性结构

常见的数据结构

常用算法

数据操作是指对数据结构中的数据元素进行运算或处理。

数据操作定义在数据的逻辑结构上,每种逻辑结构都需要一组对其数据元素进行处理以实现特定功能的操作,如插入、删除、更新等。

数据操作的实现依赖于数据的存储结构 。

一般有以下几种常用运算:

  • 创建操作
  • 插入操作
  • 删除操作
  • 查找操作
  • 修改操作
  • 遍历操作

Java中的数据结构

  • 数组列表ArrayList
java 复制代码
    @Test
    public void testArrayList() {
        ArrayList<String> list = new ArrayList<>();
        list.add("Element 1");
        list.add("Element 2");
        list.add("Element 3");
    }
  • 链表LinkedList
java 复制代码
    @Test
    public void testLinkedList() {
        LinkedList<Integer> linkedList = new LinkedList<>();
        linkedList.add(1);
        linkedList.add(2);
        linkedList.add(3);
    }
  • 哈希集合HashSet
java 复制代码
    @Test
    public void testHashSet() {
        HashSet<Character> set = new HashSet<>();
        set.add('A');
        set.add('B');
        set.add('C');
    }
  • 哈希映射表HashMap
java 复制代码
    @Test
    public void testHashMap() {
        HashMap<Integer, String> map = new HashMap<>();
        map.put(1, "One");
        map.put(2, "Two");
        map.put(3, "Three");
    }
  • 堆栈Stack
java 复制代码
    @Test
    public void testStack() {
        Stack<Double> stack = new Stack<>();
        stack.push(1.1);
        stack.push(2.2);
        stack.push(3.3);
    }
  • 队列Queue
java 复制代码
    @Test
    public void testQueue() {
        Queue<Boolean> queue = new LinkedList<>();
        queue.offer(true);
        queue.offer(false);
        queue.offer(true);
    }
  • 二叉树
java 复制代码
class TreeNode {
    int value;
    TreeNode left;
    TreeNode right;

    TreeNode(int value) {
        this.value = value;
        this.left = null;
        this.right = null;
    }
}
java 复制代码
    @Test
    public void testTree() {
        TreeNode root = new TreeNode(1);
        root.left = new TreeNode(2);
        root.right = new TreeNode(3);
        root.left.left = new TreeNode(4);
    }

源码地址

Java中的数据结构

参考文章

相关推荐
驭渊的小故事2 小时前
MyBatis XML 开发实战:从配置到 CRUD 全解析
xml·java·mybatis
哦虎!7 小时前
【JavaEE】网络初识
java
for_ever_love__7 小时前
MySQL ORDER BY 排序优化:从 Using filesort 到索引有序扫描(含双路 / 单路排序原理)
java·mysql·优化·存储·by·order·filesort
我是人✓8 小时前
Java文件上传三方式对比:从传统到SpringBoot
java·开发语言
欣栀♡8 小时前
JVM 频繁 Full GC 先看日志括号里的 cause,jstat 的 FGC 在 JDK 8 上会骗人
java·jvm
IT研究室8 小时前
最新计算机毕业设计选题推荐-基于spring boot的葡萄酒文化宣传网站-网站-文档指导-Java-springboot
java·spring boot·课程设计
慧都小项8 小时前
MyEclipse 中创建和测试 JAX-RS REST 接口:从项目配置到 REST Explorer
java·restful·myeclipse·jax-rs
Wang's Blog8 小时前
Java 项目实战: 交友项目 - 入门案例:编写 Dubbo 服务提供者
java·dubbo·交友
mmmmath_39 小时前
LeetCode.104.二叉树的最大深度
数据结构·leetcode
秋饼9 小时前
Spring AI 2.0 结构化输出企业级实战:从 BeanOutputConverter 源码到生产级解析容错
java·ai·技术分享·后端开发