免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3058 | 回复: 13

不知道这个问题能不能用位运算解决 [复制链接]

论坛徽章:
0
发表于 2011-01-11 18:12 |显示全部楼层
假设有 m个 32位整数(各不相同)存放于数组 a[m]中 ,如何用最简单快速的方式生成n个数值不同的整数

论坛徽章:
0
发表于 2011-01-11 18:17 |显示全部楼层
n个数值不同的整数  这是什么意思?

论坛徽章:
0
发表于 2011-01-11 18:46 |显示全部楼层
(伪)随机?
连续(包括格雷码)?

论坛徽章:
3
CU大牛徽章
日期:2013-03-14 14:14:08CU大牛徽章
日期:2013-03-14 14:14:26CU大牛徽章
日期:2013-03-14 14:14:29
发表于 2011-01-11 18:49 |显示全部楼层
这个首先要确定算法,然后再确定如何用位实现。
m和n谁大?我觉得算法层面先确定后才能确定用什么位运算。

论坛徽章:
0
发表于 2011-01-11 18:50 |显示全部楼层
用位运算? 可以参考CRC校验和的方式生成32个整个-不过我不确定是否有重复。

论坛徽章:
0
发表于 2011-01-11 18:59 |显示全部楼层
这个用位运算感觉没什么意义了 用排列组合应该更适合点儿吧

论坛徽章:
0
发表于 2011-01-11 19:12 |显示全部楼层
n个数值不同的整数  这是什么意思?
erlangs 发表于 2011-01-11 18:17



    就是说这n个32位整数的数值各不相同,并且与存放在a[m]的数值也不同

论坛徽章:
0
发表于 2011-01-11 19:13 |显示全部楼层
这个首先要确定算法,然后再确定如何用位实现。
m和n谁大?我觉得算法层面先确定后才能确定用什么位运算。
liugang9931706 发表于 2011-01-11 18:49



    m和n谁大无所谓,可以假设都小于100

论坛徽章:
0
发表于 2011-01-11 19:16 |显示全部楼层
这个用位运算感觉没什么意义了 用排列组合应该更适合点儿吧
wb112200 发表于 2011-01-11 18:59



    你的意思是随机生成一个数,然后挨个和a[m]中的进行比较?

论坛徽章:
0
发表于 2011-01-11 19:19 |显示全部楼层
回复 9# wawxdyy


    不是 用排列或者组合方式 组合a数组中的数字 生成数字  如果生成的数字不超过10位时 可以不考虑重复(这是优点)
   大于10位以上 随机数比较合适  具体得分情况看什么合适
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP