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

参考文章

相关推荐
苡~21 分钟前
【openclaw+claude】手机+OpenClaw+Claude实现远程AI编程系列大纲
java·前端·人工智能·智能手机·ai编程·claude api
毕设源码-赖学姐29 分钟前
【开题答辩全过程】以 基于java电脑售后服务管理系统设计为例,包含答辩的问题和答案
java·开发语言
我是秦始皇v我50040 分钟前
CSDN:Java开发者的成长沃土
java
SoulruiA1 小时前
超容易理解+模版套路解决LeetCode 前序+中序、中序+后序、前序+后序遍历构造树问题
java·算法·力扣
蜗牛^^O^1 小时前
如何负责一个系统的稳定性
java
一只叫煤球的猫1 小时前
别再把 Lambda 当匿名类:这 9 类坑你一定踩过
java·后端·面试
知识即是力量ol1 小时前
微服务架构:从入门到进阶完全指南
java·spring cloud·微服务·nacos·架构·gateway·feign
Javatutouhouduan1 小时前
RocketMQ是怎么保存偏移量的?
java·消息队列·rocketmq·java面试·消息中间件·后端开发·java程序员
天若有情6732 小时前
IoC不止Spring!求同vs存异,两种反向IoC的核心逻辑
java·c++·后端·算法·spring·架构·ioc