数据结构04-栈和队列

至此,数据结构中最基础的三个(表、栈、队列)已经结束了,由于栈和队列也是基于表结构,所以他们均可以使用数组或者链表实现,如果你可以自行实现动态数组和单链表那么基本的栈和队列你一定可以自行实现;

栈的特点:

LIFO(last in first out,即先进后出),也就是说最先插入的数据只能最后被删除或访问,对于之前实现的动态数组和链表而言,只需要隐藏掉一些方法即可,例如MyArrayList,插入和删除方面只提供add(0,E),remove(size-1)方法;

队列的特点:

LILO(last in first out,即先进先出),最先插入的数据只能最先访问;

 

作者闲来无事,结合GUI编程实现了一个简单的停车场应用,使用了栈和队列两种方式来保存入库的车辆;

效果图如下:

应用一共分8个类,一个img文件夹保存使用到的图片。

App类:程序入口;

BaseList接口:提供基本操作方法规范;

Car类:汽车类,提供汽车基本属性;

CarFrame:程序窗口类;

CarPanel:程序面板类,绘制图片和字符串;

MyArrayQueue类:基于数组实现的列队;

MyLinkedQueue类:基于链表实现的队列;

MyLinkedStack类:基于链表实现的栈;

 

百度网盘链接(只提供了图片和源文件,请自行复制至IDE工具):

https://pan.baidu.com/s/1-KjErCv20sJlEJIUP_cq9w

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值