Q3.7 Create a data structures to hold dogs and cats.(待续)

本文介绍了一种动物收容所管理系统的设计方案,该系统采用严格的“先入先出”原则,支持狗和猫两种动物的收养。通过使用自定义的数据结构及内置的链表实现enqueue、dequeueAny、dequeueDog和dequeueCat等功能。

Q: An animal shelter holds only dogs and cats, and operates on a strictly "first in, first out" basis. People must adopt either the "oldest" (based on arrival time) of all animals at the shelter, or they can select whether they would prefer a dog or a cat (and will receive the oldest animal of that type). They cannot select which specific animal they would like. Create the data structures to maintain this system and implement operations such as enqueue, dequeueAny, dequeueDog and dequeueCat. You may use the built-in L inkedL ist data structure.

A: 因为要保存cat和dog,以及其共同体,所以利用虚函数效果更好一些。

首先定义一个新的基本数据结构用来保存动物的名字和入住的顺序。并且用两个链表,分别用来继续dog和cat的数据。

enqueue:设定其order, 再将其加入相应的链表当中

dequeueAny:根据dog和cat第一个数据的顺序,判断返回哪一个数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值