回复:一个随机排列的程序,大家帮看一下还能优化吗?(能否用FOR简化)

已锁定

xinchen

  • 帖子

    230
  • 精华

    1
  • 被关注

    5

论坛等级:侠圣

注册时间:2015-11-05

白金 白金 如何晋级?

发布于 2023-12-06 13:26:32

24楼

“对号入座”,sw[] 就是座位,对应了 1~16 个数;

规定 如果生成了 1 则放 sw[1] ( 即 sw[1] = true ),

同理,2 放 sw[2]。。。16 放 sw[16]


如果想知道 有没有生成过 x,则看下 sw[x] 是否 为 true 即可


另外, 目前定义 sw[] 下标是 1~16,对应的随机数(最大)范围是 1~16

如果范围是 151~166 呢?

当然可以修改 sw[] 下标是 151~166 了,但一般是减掉下限,即

151 放 sw[1],152 放 sw[2],166 放 sw[16] 了;


到这,本质已经体现了,就是“基址加变址”或是 key-address 的访问原理,也是 hash 表的最底层原理



评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15117条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。