应使用什么数据结构来表示此表?

时间:2016-10-11 16:15:43

标签: data-structures

给出以下数据集。

|       | English | Maths | Science | Total |
|-------|---------|-------|---------|-------|
| Alice | 7       | 4     | 6       | ?     |
| Bob   | 3       | 5     | 1       | ?     |
| Total | ?       | ?     | ?       | ?     |

我应该使用哪种数据结构来表示这些数据,这样我才能有效地计算带有问号标记的值?

2 个答案:

答案 0 :(得分:1)

你可以简单地保留一个HashMap,其中key是' Name'而且价值是'英语,印地语...... Total'的结构。除了Key中的所有名字外,还有一个特殊名称 - ' Total'在钥匙。 所以,每次你添加学生的名字,比方说,爱丽丝和主题:英语,你需要搜索2个键: 爱丽丝和道达尔。

对于每个键,请更新主题英语和总计。

无需为此设置复杂的数据结构。把事情简单化。

答案 1 :(得分:0)

使用哪种数据结构取决于上下文。您可以将它存储在PostgreSQL之类的关系数据库中,并使用SQL聚合函数(如sum)计算值。

或者您可以将其存储为XML并使用XSLT来计算总数。

使用编程语言,您几乎可以使用任何您喜欢的格式,例如XML,JSON,YAML或CSV。然后使用适当的库以您选择的编程语言完成计算。