java - 适合车辆 parking 系统的数据结构

标签 java data-structures

我正在开发车辆 parking 系统java应用程序。应用程序应该跟踪汽车何时进入 parking 场、何时离开 parking 场、 parking 场的状态,是否已满。该应用程序还应检查 parking 场内要停放的汽车的剩余容量。 所以,我想问我应该使用什么数据结构来解决特定问题?

注意:不能使用队列,因为它们基于先进先出。所以,汽车先进入 parking 场我不会先离开。因此,请为我建议适合特定情况的数据结构。

最佳答案

用于存储汽车的适当容器将是一个Set,因为:

  • 元素(汽车)没有特定的顺序。
  • 每辆车只能在 parking 场停放一次。

其他容器具有此处不需要的特殊属性:

  • 列表:元素排序(可能)在这里没用。
  • 队列:下一个要删除的元素不一定是第一个已添加的元素。
  • 堆栈:下一个要删除的元素通常不是最后一个添加的元素。

Java 提供了 Set 的不同实现。从性能角度来看,HashSet 实现在这里将是一个不错的选择,因为它对于 addremove 操作具有恒定的时间复杂度, 包含size,您可能需要它们。

关于java - 适合车辆 parking 系统的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37358717/

相关文章:

java - 如何以编程方式获取maven settings.xml的路径

java - 当我在 apache poi 库中使用 Calibri 字体时,可运行 jar 中的列宽无法正确显示

php - 在 PHP 中对数组进行分组

c - 意外的结果 - 寻找最大值和第二最大值

java - 我在几个数字中找到最大的数字 "make"的问题?

java - 具有不同查询参数类型的 Spring REST 端点

java - JPQL:SELECT NEW 查询中的枚举文字

java - 获取属性中的数字作为字符串(java.util.Properties,Android)

python - 交换存储在元组中的两个列表的位置

javascript - 在 Javascript 中实现我的堆栈类时遇到问题