Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 存储数据表和查询任何列的最佳方法_Java_Search_Data Structures - Fatal编程技术网

Java 存储数据表和查询任何列的最佳方法

Java 存储数据表和查询任何列的最佳方法,java,search,data-structures,Java,Search,Data Structures,因此,我有一个学校项目,我必须以这种格式存储一组数据: 标题/艺术家/年份/流派/职位 它用于播放列表程序,需要进行如下查询: “在具有(标题/年份/艺术家)的音乐之前立即获取音乐” “找到第一种情况,即类型X的音乐紧跟类型Y的音乐之后” “今年发行的音乐中,哪些歌曲发行量较少?” “查找标题最大的非重复音乐” 因此,我想使用的数据结构是一个按位置排序的双链表,以及具有不同键的并行映射(一个用于行的每个字段)和对应的值的组合,这些值是链表的节点 这将使查询这些值更快 是否有其他数据结构可以改进上

因此,我有一个学校项目,我必须以这种格式存储一组数据:

标题/艺术家/年份/流派/职位

它用于播放列表程序,需要进行如下查询:

“在具有(标题/年份/艺术家)的音乐之前立即获取音乐”

“找到第一种情况,即类型X的音乐紧跟类型Y的音乐之后”

“今年发行的音乐中,哪些歌曲发行量较少?”

“查找标题最大的非重复音乐”

因此,我想使用的数据结构是一个按位置排序的双链表,以及具有不同键的并行映射(一个用于行的每个字段)和对应的值的组合,这些值是链表的节点

这将使查询这些值更快


是否有其他数据结构可以改进上述查询?

预期的元素数是多少?如果它很小,并且只是编写Java代码的练习,那么只需使用ArrayList。如果它很大,并且需要做一些严肃的事情,请使用数据库。可以保证该位置适合整数变量,并且是唯一的值。我还必须实现所使用的任何数据结构。正如在代码中一样,结构及其方法“存储数据表和查询任何列的最佳方式”-为什么不从描述数据属性和功能的
接口开始,然后用一个具体的类来支持它呢?您可以简单地存储在
ArrayList
中,并根据需要生成额外的索引。我不知道如何存储索引?