如果您在图书馆组织图书,您将如何存储它们以及您将使用哪种数据结构?"

Lea*_*ner 0 data-structures

我会使用哈希表并使用ISBN号作为密钥.因为这将给我一个O(1)的查找时间....因为在哈希表中查找的平均时间是O(1)....

我们也可以使用二进制搜索树.....查找时间是O(nlogn)...

你会使用什么数据结构?为什么?

Kei*_*ith 5

这听起来像是一个家庭作业或面试问题.如果我问它,我会感兴趣的不仅仅是你是否理解了几个数据结构.我还想知道你如何分析现实问题并将其转换为计算机和数据结构的世界.

因此,您应该考虑在选择数据结构之前需要对数据执行哪些操作.您还应该考虑一些真实的库和一些可能出现您选择的任何数据结构的"陷阱".

如果您需要做的只是从ISBN转换为相应书籍的商品,那么哈希表可能是一个合理的选择.但是你可能想要考虑如何处理流行书籍,例如畅销书,图书馆可以有很多副本.

但ISBN查找真的是重要的用例吗?我一直使用我当地的图书馆,而且我从不按ISBN查阅书籍.我做的一些事情是:

  • 按标题查找特定书籍.有时会有不同的书籍具有相同的标题.
  • 浏览我喜欢的作者的书籍清单
  • 查找特定主题的书籍被搁置的地方,以便我可以浏览它们.

图书馆员可能还有目录系统的其他用途:

  • 将新书添加到目录中
  • 将图书标记为已签出
  • 更改书籍的列表信息,例如主题分类

所以我想我的建议是在决定解决方案之前更仔细地考虑你想要解决的问题.

对于提出更多问题而不是提供答案而道歉.我希望无论如何这都有用.