gpt4 book ai didi

java - java中的简单关系数据库 - 使用什么数据结构?

转载 作者:行者123 更新时间:2023-12-02 02:22:45 25 4
gpt4 key购买 nike

我想使用 java 实现一个简单的内存数据库来存储两个关系表(一个用于 NBA 教练,一个用于 NBA 球队),其架构如下:

教练(Coach_ID:由少于 7 个大写字母和两位数字组成,
季节:4 位数年份,
First_name :任何合理的英文名,
Last_name :任何合理的英文名,
season_win :非负整数,
season_loss :非负整数,
playoff_win :非负整数,
playoff_loss :非负整数,
团队:大写字母和/或数字)

团队(team_ID:大写字母和/或数字,
地点:美国城市名称,一两个英文单词,
姓名:团队名称,任何合理的英文单词,
联赛:一个大写字母)

我的问题是java中可用的哪些数据结构最适合表示具有上述记录类型的两个表?我的数据库必须支持添加记录、查询和其他简单命令,因此最有利于这些操作(添加、搜索等)的数据结构将是最有帮助的。

到目前为止,我已经提出了以下内容:

class Team_Record {  
}

class Coach_Record {
}

ArrayList <Team_Record> teams;
ArrayList <Coach_Record> coaches;

我的方向正确吗?还是有更好的方法来实现数据库表?

注意:数据库仅位于内存中。当程序退出时,数据就会丢失。无需数据持久化。

谢谢

最佳答案

贾斯汀,

通常数据库表示您打算进行查找和插入。在这种情况下,您将需要选择最佳的搜索复杂性并插入复杂性数据结构。要开始使用 ArrayList 意味着要搜索教练或团队,您需要将最坏的情况遍历为 n,其中 n 是集合中的对象总数。

另一方面,如果您使用Map,由于您使用的是内存数据库,很可能您可以将 key 传递给程序中的不同子模块,从而使教练和团队的搜索变得容易。

处理数据库时,关键因素是可搜索性和插入。最快的查找方式和最快的插入方式。

希望这有帮助。

关于java - java中的简单关系数据库 - 使用什么数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48273393/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com