IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 数据结构与算法 -> java中数据结构——栈,队列,链表 -> 正文阅读

[数据结构与算法]java中数据结构——栈,队列,链表

**

队列

**
对于字符串是否等于某一字符,使用方法:contains,equals

循环队列:
1、如何判断循环队列队为空?
队空:head == tail 跟之前一样。
2、如何判断循环队列队为满
队满:(tail+1) mod QueueSize==head
3、如何获得队列中的元素数量
length=(tail-head+QueueSize)%Queuesize(其中QueueSize表示的是队列的长度,tail表示的队列的尾部,出队时tail所在位置没有元素,head表示的队列的头部)
输入类型的方法:
Scanner scan = new Scanner(System.in);
int m = scan.nextInt(); //整型
String type = scan.next();//字符串型

当栈中有元素时,栈顶元素为1,所以进栈是栈顶元素应为1,而不能是0。在判断是否为空栈的时候,判断条件出错,将判断条件(top!=0)写成(top==0),造成了逻辑条件的错误,导致在main函数中的判断出现错误,从而使得程序运行代码出现问题。

Java中内置栈类:

栈是 Vector 的一个子类,它实现了一个标准的后进先出的栈,至于什么是 Vector,大家可以理解为能力超强的数组,堆栈定义了默认构造函数,用来创建一个空栈。
在 Java 的 stack 模板定义了如下操作流程:
push():执行 push 时(即,将元素推入栈中),是通过将元素追加的数组的末尾中。
//peek()是将其当成栈顶top来使用,取出元素不删除
peek():执行 peek 时(即,取出栈顶元素,不执行删除),是返回数组末尾的元素。
//pop()表示的是取出元素,即执行出栈操作,执行出栈操作时需要将栈中的元素删除
pop():执行 pop 时(即,取出栈顶元素,并将该元素从栈中删除),是取出数组末尾的元素,然后将该元素从数组中删除。
empty():继承于 Vector,返回是否为空
size():继承 Vector,返回元素的个数。

**

Vector

**
Vector在做题的过程中,由于Vector是一个空间动态变化的数组,所以取出数据的时候要通过get来就行取出,因为Vector被封装了。
定义:Vector vector = new Vector<string>();
对于将Vector用作二维数组来说,那么创建对象和存放数据的时候要格外注意。如:

//1、构建一个类似于二维的变量packet	
static Vector<Vector<String>> pakage  = new Vector<Vector<String>>();`

//2、存放数据
city.addElement(k);
//添加包裹
pakage.addElement(new Vector<String>());
 //将新增加的数据添加到城市本身拥有数据的后面,
 //由于Vector类型的city是由1-N,但是下标是从0-N-1
pakage.get(city.size()-1).addElement(m);

**

Queue

**
使用queue进行运算,其中offer是输入,pull为输出。

s定义:Queue<String> queue = new LinkedList<String>();

教训:将输入和输出分开进行处理。

Map

Map是一种映射,其中存在key和value,他们一一对应,通过key确定value

map 是一个关联容器,它提供一对一的 hash。
定义:Map map= new TreeMap();
第一个可以称为关键字(key),每个关键字只能在 map 中出现一次
第二个可能称为该关键字的值(value)
map 以模板(泛型)方式实现,可以存储任意类型的数据,包括使用者自定义的数据类型。Map 主要用于资料一对一映射(one-to-one)的情況

小贴士:
在java运算过程中,一般最小值为-0x3f3f3f3f,而不是-0x7f7f7f7f,防爆,内存不足

  数据结构与算法 最新文章
【力扣106】 从中序与后续遍历序列构造二叉
leetcode 322 零钱兑换
哈希的应用:海量数据处理
动态规划|最短Hamilton路径
华为机试_HJ41 称砝码【中等】【menset】【
【C与数据结构】——寒假提高每日练习Day1
基础算法——堆排序
2023王道数据结构线性表--单链表课后习题部
LeetCode 之 反转链表的一部分
【题解】lintcode必刷50题<有效的括号序列
上一篇文章      下一篇文章      查看所有文章
加:2022-04-01 23:38:43  更:2022-04-01 23:39:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 9:28:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码