要实现的这个功能类似于学习强国里面的那个“挑战答题”,,具体需求如下:
- 只要用户答错一道题,本轮答题就立即结束。
- 如果答对,就能继续做下一道题,直到答完题库里的所有题。
- 在每一轮答题的过程中,同一道题最多只能让用户答一次。
前两个需求我觉得挺简单,主要是最后一个,怎么能够给用户随机抽题,并且每次抽到题目都不重复呢?
我想到的一种比较“笨”的办法,就是每次给用户下发 100 道题的编号,然后从这 100 道题里随机抽取编号,根据编号给用户发送题目。这 100 道题抽完之后,再给用户下发接下来的 100 道题,这样是不是既保证了随机性,也不会给后端太大的压力?
另外还有什么更更好的方法能实现这个需求么?欢迎指点,谢谢先。