cool037

导航

Java数据结构

数组(Arrays)

  • 查询速度快:通过地址值和索引定位,查询任意数据耗时相同(数组内存空间的地址是连续的)
  • 删除效率低:要将原始数据删除,同时后面每个数据前移
  • 添加效率极低:添加为之后的每个数据后移,再添加元素
int[] array = new int[5];

列表(Lists)

List<String> arrayList = new ArrayList<>();
List<Integer> linkedList = new LinkedList<>();

链表

查询慢,增删相对快

public class ListNode {
    // 结点的值
    int val;

    // 下一个结点
    ListNode next;

    // 节点的构造函数(无参)
    public ListNode() {
    }

    // 节点的构造函数(有一个参数)
    public ListNode(int val) {
        this.val = val;
    }

    // 节点的构造函数(有两个参数)
    public ListNode(int val, ListNode next) {
        this.val = val;
        this.next = next;
    }
}

哈希表(hash table)

用来快速判断一个元素是否出现在集合里

哈希函数(hash function)

栈:先进后出

队列: 先进先出

从后端进入队列的过程:入队列;
从前端离开队列的过程:出队列;

posted on 2025-03-23 18:36  海然  阅读(18)  评论(0)    收藏  举报