【发布时间】:2013-04-22 00:59:27
【问题描述】:
我正在尝试制作简单的游戏,从数据库中加载单词(检查)
放入数组(检查)
然后他们一个接一个地被打乱并显示一个文本字段供用户输入。
在我看来,这听起来很简单,但我不知道如何打乱单词,换句话说,我如何处理字符串中的单个字母。
我是java脚本的初学者,所以请温柔地陪我^^
【问题讨论】:
标签: javascript algorithm
我正在尝试制作简单的游戏,从数据库中加载单词(检查)
放入数组(检查)
然后他们一个接一个地被打乱并显示一个文本字段供用户输入。
在我看来,这听起来很简单,但我不知道如何打乱单词,换句话说,我如何处理字符串中的单个字母。
我是java脚本的初学者,所以请温柔地陪我^^
【问题讨论】:
标签: javascript algorithm
我对javascript不熟悉,所以我只用伪代码描述一个算法:
-制作所有字母的列表/数组。
-从 1 到 n(字母的数量)中随机选择一个数字,然后从列表中取出该字母。 (请注意,您必须减去一个才能获得索引)。
-从前一个列表中删除该字母并将该字母添加到新列表中。
-冲洗并重复,直到旧列表中没有字母为止。
排序相关, 在 python 中(也许你可以把它翻译成 javascript?),一个可能的实现是
l = list(word)
newWord = ""
for i in xrange(len(word)):
index = random.range(0, len(l))
newWord = newWord + l.pop(index)
【讨论】:
newWord += l.pop(index) 或newWord = newWord + l.pop(index); newWord += newWord + l.pop(index) 可能不会做你想做的事。此外,您可能应该将字符附加到列表然后加入;这更有效,因为内存分配更少。