程序员面试金典 - 面试题 03.06. 动物收容所(队列)
生活随笔
收集整理的這篇文章主要介紹了
程序员面试金典 - 面试题 03.06. 动物收容所(队列)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
動物收容所。有家動物收容所只收容狗與貓,且嚴格遵守“先進先出”的原則。
在收養該收容所的動物時,收養人只能收養所有動物中“最老”(由其進入收容所的時間長短而定)的動物,或者可以挑選貓或狗(同時必須收養此類動物中“最老”的)。
換言之,收養人不能自由挑選想收養的對象。請創建適用于這個系統的數據結構,實現各種操作方法,比如enqueue、dequeueAny、dequeueDog和dequeueCat。允許使用Java內置的LinkedList數據結構。
-
enqueue方法有一個animal參數,animal[0]代表動物編號,animal[1]代表動物種類,其中 0 代表貓,1 代表狗。
-
dequeue*方法返回一個列表[動物編號, 動物種類],若沒有可以收養的動物,則返回 [-1,-1]。
2. 解題
- 第一個參數animal[0]就是時間,小的表示時間早
總結
以上是生活随笔為你收集整理的程序员面试金典 - 面试题 03.06. 动物收容所(队列)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LintCode 1210. 升序子序列
- 下一篇: LintCode 390. 找峰值 II