集合框架,List常用API,栈和队列初识

回顾

集合框架

两个重点------ArrayList和HashSet.

Vector/ArraysList/LinkedList区别

Vector ArraysList LinkedList
底层实现 数组 数组 链表
线程安全 安全 不安全 不安全
增删效率 较低 较低 高
扩容 *2 *1.5 --------

(>>)运算级最低,记得加括号。

常用Api

List*

remove()的两种删除

API 解释
1 add() 添加
2 remove(index) 索引删除
3 remove(Object) 对象删除
4 set(index,e)《Set》 修改
5 clear() 清空
6 size() 长度
7 get(index)《List》 查询
8 indexOf()《List》 找出位置
9 contains(用前要重写) 包含
10 isEmpty() 集合为空
11 itreator() 迭代器(遍历和删除)
12 toString() 转换为字符串

数组比较


Stack栈

后进先出

栈是一种特殊的数据结构,后进先出。

结构

底层还是数组。Vector派生出来的,继承Vector。

Api方法

push():入栈

peek():栈顶

取栈顶不会删除栈顶。

System.out.println("栈顶:"+stack.peek());//栈顶------最后进栈的

pop():出栈

出栈会删除栈顶元素。

System.out.println("wu:"+stack.pop());//出栈

完整代码:

复制代码
package com.ffyc.Stack;

import java.util.Stack;

public class StackDemo01 {
    public static void main(String[] args) {
        Stack<Integer> stack = new Stack<>();
        //存------压栈
        stack.push(1);
        stack.push(2);
        stack.push(3);
        stack.push(4);
        stack.push(5);

        System.out.println("栈:"+stack);
        System.out.println("栈顶:"+stack.peek());//栈顶------最后进栈的
        //System.out.println("wu:"+stack.pop());//出栈

        //倒序打印
        while (stack.size()>0){
            int temp = stack.pop();//pop()后当前的栈顶元素自动删除
            System.out.println(temp);
        }

    }
}

反转"hello"

中间的回文数量的题可以用

计算器题目

准备工作

length-1 否则越界


Queue队列


offer()进

队头添加数据

poll()出

从队头取出元素/数据

peek()顶

取出最先进队的元素。第一个offer()进去的元素。

是下面代码的输出:queue.peek--->1

队列

可排序的队列

相关推荐
zaizai10072 小时前
算法(左程云)1
数据结构
charliejohn3 小时前
计算机考研 408 数据结构 图论-关键路径
数据结构·图论
flyingonpine18 小时前
PowerShell脚本数字签名实战:自签名证书、代码签名与信任链验证
windows·信任链
David猪大卫19 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
vvilkim21 小时前
数据结构类型、区别与应用场景:一篇讲透选型逻辑
数据结构
goehou1 天前
让 AI 替我操作这台电脑,先把手能伸多远定下来
windows·自动化·权限管理·ai agent
公子小六1 天前
基于.NET的Windows窗体编程之WinForms数据持久化(1)
windows·microsoft·c#·.net·winforms
阿卡好可爱1 天前
Lua 热更新不生效:改完文件线上仍是旧逻辑,package.loaded 与 upvalue 重绑定详解
数据结构·分布式·后端·架构·lua
2601_967987372 天前
安装 Redis 或 Redis Stack
linux·windows·redis·macos·安装