分别维护dog和cat队列、进入队列时加一个计数count
参考:
1、异常判断,比如传入的不是dog或cat
2、可用链表结构、避免掉抽离数据的排序问题
dog和Cat两个类,继承于Pet大类
1、用add方法将cat类和dog类的实例放入队列中
a = []
a.append O(1)
2、调用pollAll方法,将队列中所有实例按进队列的先后顺序依次弹出
比较猫狗index,读出来小的,更新recond,
3、调用pollDog方法,将队列中dog实例按照进队列的先后顺序依次弹出
根据 self.cat_recond/self.dog_recond, 把数据取出来,更新recond,维护recond
4、调用pollCat方法,依次弹出cat
同上
5、isEmpty()方法,检查是否还有dog或cat
6、7、isDogEmpty()、isCatEmpty()方法同上
用self.cat_recond=[cat在队列的index]
self.dog_recond=[dog在队列的index]
实例进入时记录,
判断该队列长度O(1)
感觉没什么不好的