實現優先級隊列,我有以下的代碼來實現電梯:電梯
public class Elevator{
Direction dir;
int floorNum;
int capacity;
public void moveUp{
dir = Direction.Up;
}
public void moveDown{
dir = Direction.Down
}
public boolean isMoving{
returns dir.equals(Direction.STATIONARY);
}
}
public class ElevatorController{
Elevator[] elevators;
PriorityQueue<Integer> queue = new PriorityQueue<Integer>;
public void buttonPressed{Direction d, int fromFloot, int toFloor){
}
}
我讀了實現電梯將實現優先級隊列,以獲得電梯,但我不知道如何的好辦法。
隊列將包含目的地樓層。
你會如何建議實施的?
依賴。我認爲它必須依賴於從電梯內選擇的目的地和目的地,你不覺得嗎?例如:電梯在5號,客戶選擇-1(車庫),客戶2在3號,並推動「獲得」。它應該拿起client2嗎?有沒有getForMovingUp和getForMOvingDown或者只有中立的get? – Fildor 2013-04-30 16:55:14
有一個方向可以告訴方向簽名中的方向是向上還是向下。是的,它會在途中接他們 – Dejell 2013-04-30 16:59:23