【数据结构】第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中的数据结构

参考文章

相关推荐
独泪了无痕10 小时前
探索Pinyin4j-Java中的拼音转换利器
java·后端
道尔柯南11 小时前
C++ string 类详解:从常用接口到深拷贝,彻底掌握字符串处理
android·java·c++
kingx312 小时前
Bugku 3122 谷歌小恐龙题解:纯离线逆向 Vault 的 AES-GCM 加密资源(附 Python 解密器)
java·逆向·ctf·bugku·aes-gcm
DevOpenClub14 小时前
职教高考控制线 API:招生类别枚举、筛选与空分数含义
java·数据库·高考
十二15 小时前
【洛谷题解】P1083 [NOIP 2012 提高组] 借教室(二分答案 + 差分)
数据结构·c++·算法·蓝桥杯
露天赏雪16 小时前
第3篇:Sentinel熔断降级实战:大模型接口抖动时的服务兜底方案
java·开发语言·人工智能·spring boot·spring·servlet·sentinel
天天被压力16 小时前
【A股分钟级高频数据完全手册 #06】北交所分钟级数据接口:京市股票Pro版最新分时
java·人工智能·python
天天被压力16 小时前
【A股分钟级高频数据完全手册 #05】指数历史分钟数据接口:Pro版沪深指数分时回放
java·人工智能·python
captain37616 小时前
▲统一功能——DispatcherServlet源码分析
java·spring·java-ee·log4j·maven
金銀銅鐵16 小时前
JDK 21 中 List.of 的实现细节:从 List12 到 ListN
java·后端·ai编程