为了账号安全,请及时绑定邮箱和手机立即绑定

  var randx, randy;

  do {

    randx = parseInt (Math.floor (Math.random () * 4));

    randy = parseInt (Math.floor (Math.random () * 4));

  } while (board[randx][randy]);

老师这样逻辑是不是更加好一些

正在回答

4 回答

66666666666

0 回复 有任何疑惑可以回复我~

赞!算法复杂度一下子变成O(1)了!

0 回复 有任何疑惑可以回复我~

利用board[i][j] 0 的个数n来控制,然后使随机数产生范围在0-n之间,产生随机数x,并遍历board[i][j] ,第x位数即为随机产生的位置,这样行么老师。

2 回复 有任何疑惑可以回复我~

大赞!逻辑清晰了许多!


但其实可以不使用无限循环解决这个随机数生成问题,想想看:)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信