考试系统中,如何将题目乱序?

需求是这样的:
每个学生有一个唯一的id;
每个学生的题目顺序都不能一样,但是同一个学生,每次进入的题目顺序都是一样的?
请问,这样好不好实现?
ps:不想在服务器保存学生的题目顺序,希望能通过某种乱序算法来对每个学生的题目排序
请问能提供一个思路吗?谢谢

如果换成我自己做,我会这样去设计:
1、学生进入系统后随机去数据库中取一份试题,存Redis中,用户id作为key,题目作为list,存给redis中,用户访问时,访问redis中数据存给本地localstorm中,这样即使用户换了浏览器,乃至换了地方,只要在规定时间内登录,永远都能保证同一用户同一份卷子,不同用户不同卷子。如果害怕抽到相同题目,可以在答案上加一个随机数,实现答案顺序随机,这样基本就能保证唯一了。
2、将用户登录的id进行一定的移位运算,或者其余计算,也就是说其实不是真正的题目随机不一样,其实是伪随机。就像加密和解密一样,用户id就是密钥

Random,保存在Cookie中。

这个好实现,意思就跟md5差不多,输入一致输出一致,你可以根据学生的相关信息生成一个md5,然后用这个md5确定题目顺序,总之各个学生生成的md5应该是不同的,然后每次每个学生的md5是一样的再按照一定的规则,每次每个学生的题目就是一样的但是大家各不相同