Java常见的数据结构: 1.栈 2.队列 3.数组 4.链表 5.二叉树 6.二叉查找树 7.平衡二叉树 8.红黑树 9.哈希表 1.栈 特点: “先进后出,后进先出” 基本操作: push(入栈): 将元素推入栈中。 pop(出栈): 从栈中移除并返回顶部的元素。 peek(或top): 查看栈顶的元素,但不移除它。 isEmpty: 检查栈是否为空。 size: 返回栈中元素的数量(有些实现可能不提供此功能)。 2.队列 特点:“先进先出,后进后出” 基本操作: enqueue: 将一个元素添加到队列的末尾。 dequeue: 从队列的前端移除并返回元素。 peek(或front):查看队列前端的元素,但不移除它。 isEmpty: 检查队列是否为空。 size: 返回队列中元素的数量(有些实现可能不提供此功能)。 3.数组 特点:创建后固定大小,内存连续性,查询快,增删慢 基本操作: 访问元素:通过索引访问特定位置的元素 示例: int firstNumber = numbers[0]; // 获取第一个元素的值 修改元素:通过索引修改特定位置的元素 示例: firstNumber[0] = 10; // 将第一个元素的值设置为10 4.链表 单向链表 结点结构: 链表结构: 特点: 链表中的结点是独立的对象,在内存中是不连续的,每个结点包含数据值和下一个结点的地址 查询慢,无论操作哪个数据都要从头开始找 相对于数组,增删较快 双向链表 结点结构 链表结构 特点: 既可以往前走,也可以往后走