我有以下学生信息,包括对应的分数和排名。
学生的排名与学生的分数成反比。我需要找到最佳数据结构来存储上述信息,以便按以下方式执行操作(最佳时间复杂度)。可以假设学生姓名是唯一的。
1. 给定学生姓名,查找分数和排名。 2. 给定排名,查找学生姓名和分数。 3. 更新学生的分数。
我考虑使用两个哈希表,一个用于学生和分数映射,另一个用于学生姓名和排名映射。是否有更好的数据结构? 是否有办法利用排名与分数成反比这一事实?
Name Marks Rank
A 30 1
B 20 2
C 10 3
学生的排名与学生的分数成反比。我需要找到最佳数据结构来存储上述信息,以便按以下方式执行操作(最佳时间复杂度)。可以假设学生姓名是唯一的。
1. 给定学生姓名,查找分数和排名。 2. 给定排名,查找学生姓名和分数。 3. 更新学生的分数。
我考虑使用两个哈希表,一个用于学生和分数映射,另一个用于学生姓名和排名映射。是否有更好的数据结构? 是否有办法利用排名与分数成反比这一事实?