47、数据结构与 Java 集合 API 详解

数据结构与 Java 集合 API 详解

1. 栈的基本概念与操作

栈是一种线性数据结构,它遵循后进先出(LIFO)的原则。就像一叠盘子,最后放上去的盘子总是最先被拿走。下面通过一个具体的操作示例来展示栈的内容变化。

假设栈初始为空,执行以下操作:

push(5); 
push(21); 
pop(); 
push(72); 
push(37); 
push(15); 
pop();

操作步骤及栈内容变化如下:
| 操作 | 栈内容 |
| — | — |
| 初始状态 | 空 |
| push(5) | 5 |
| push(21) | 5, 21 |
| pop() | 5 |
| push(72) | 5, 72 |
| push(37) | 5, 72, 37 |
| push(15) | 5, 72, 37, 15 |
| pop() | 5, 72, 37 |

2. 非线性数据结构

数据结构可分为线性和非线性两种。线性数据结构中的数据是按顺序排列的,而非线性数据结构的数据则不按线性方式组织。这里主要介绍两种非线性数据结构:树和图。

2.1 树

树是一种非线性数据结构,由一个根节点和可能的多个层次的额外节点组成,形成一个层次结构。除根节点外的所有节点称为内部节点,没有子节点的节点称为叶节点。树通常是“倒置”绘制的,根在顶部,叶在底部。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值