【发布时间】:2013-11-21 01:15:37
【问题描述】:
我有一个问题清单。每个问题至少有 2 个答案可供选择。目前只有一个选项是正确的。
以相同的顺序回答可以让学生了解答案所在的位置,而不是学习问题的实际答案。改组答案很好。
问题:我使用索引来跟踪每个问题的正确答案。这种方式不适用于改组答案。
当前问题结构:
question structure {
correct answer, index of where the correct answer is in the array below
list of answers, simple array of strings
}
当洗牌(Fisher-Yates shuffle)正确答案在数组中移动时,索引会改变。
一种可能的解决方案是将结构切换到此,但效率低下:
question structure {
list of answers
}
answer structure {
boolean correct answer (true, false)
string answer
}
有没有更好的方法来做到这一点? 如何跟踪数组中的正确答案?
我正在考虑将一系列答案保存在一个列表中,然后使用地图并随机播放该地图。看起来像是矫枉过正,复杂,内存和cpu饥饿。这样我就可以将索引保持在正确答案上。
我一直对这个问题视而不见。
注意:这个程序原型是用 C# 编写的,但应该没那么重要。
【问题讨论】:
标签: performance algorithm language-agnostic