Это не проблема homeowrkКакую структуру данных я должен использовать для этой конкретной ситуации?
Я проектирование стоянки и позволяет сказать, что у меня есть переменная used
, которая подсчитывает, сколько пятен используют и Hashmap
который отображает номера автомобиля VIN номерам парковки.
Я начинаю с used = 0
Когда Cara прибывает:
used = used + 1;
h.put("CarA" , used) //CarA-> 1
Когда Carb прибывает:
used = used + 1;
h.put("CarB" , used) //CarB-> 2
Когда Carc прибывает:
used = used + 1;
h.put("CarC" , used) //CarC-> 3
В Thi s used
содержит 3
Теперь я удаляю CarA.
used = used - 1 // used contains 2
Вопрос: Но теперь мне нужно следить за тем, что слот 1 пуст, и я не должен забывать использовать его снова для любого другого автомобиля. Как мне отслеживать этот факт?
Мое решение (которое я хотел бы улучшить и получить критику) заключается в том, что я могу хранить такие количества (освобождающихся при удалении автомобилей) в очереди и по мере того, как машины приходят, если очередь не пуста Я должен просто использовать слоты в очереди, пока очередь не будет пустой.
Если у вас есть решение, в чем ваш вопрос? –
Помогает ли идея «распределения памяти приятелей»? http://en.wikipedia.org/wiki/Buddy_memory_allocation –
@TedHopp Я добавил разъяснения. – abc