编程珠玑12章课后有个问题题目不理解。

neicole 2013-01-19 09:41:31
原题是:
/**
* 第12章,第02题
* 12.1节要求所有的m元子集被选中的概率相等,这个条件比按等概率m/n选择每个整数更强 。
* 给出这样一个算法,其中每个元素的选中概率相等,但某些子集的选中概率比其他子集大一些。
**/

而题目的12.1节是这样要求的:
输入:m和n,使 0 < m < n ( m, n均为整数)
输出:m个随机整数的有序列表。(随机整数不允许重复)

不明白:这里问题具体所指的是什么意思?
1. m元子集是什么? (就是指那m个随机整数的有序列表吗?)
2. “m/n选择每个整数”指在整个n集合里面中的m集合中的每个整数被选中的概率?
3. 后面所讲的“某些子集的选中概率比其他子集”
“某些”是自己指定还是说随机的?
“其他子集”为什么会存在其他子集,它是将n元数组分割成了很多个子集的吗?
“其他子集”和“每个元素”选中的概率是相等的吗?
...全文
172 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
neicole 2013-01-20
  • 打赏
  • 举报
回复
引用 3 楼 FancyMouse 的回复:
这个不存在强不强的问题。你只要理解成这个概率分布,和每个元素以m/n概率选中的概率分布不一样就可以了。
嗯,那我就不拘泥于小节了~
FancyMouse 2013-01-20
  • 打赏
  • 举报
回复
这个不存在强不强的问题。你只要理解成这个概率分布,和每个元素以m/n概率选中的概率分布不一样就可以了。
neicole 2013-01-19
  • 打赏
  • 举报
回复
引用 1 楼 amoyman 的回复:
m元子集。好多年前的事了,现在还记得一点。 大意是这样: 比方说我们有一大串的随机数0和1,比方有10000个吧。 那么,在这10000个中,两个数成一对的00、01、10、11出现的概率应该是相当的,三个数成一对的000、001、010、011、100、101、110、111出现的概率也应该是相当的,四个数一对……以此类推。 两个数的称2元子集、三个数的称三元子……
谢谢~ 对题目的理解清晰了好多,大概知道了它要 求的是什么了。 明白了什么是m元子集了,之前直接百度“m元子集”找不到答案,后面讲的00、01...也明白了。 还有一个疑问: “要求所有的m元子集被选中的概率相等,这个条件比按等概率m/n选择每个整数更强 。” 这句话还是看不懂,“m元子集被选中的概率相等的条件 比 按等概率m/n 选择 每个整数 更强 。” 纠结了,这个“更强”,强的是什么呢? “条件”与“选择整数” 相比起来“条件”更强??
阿麦 2013-01-19
  • 打赏
  • 举报
回复
m元子集。好多年前的事了,现在还记得一点。 大意是这样: 比方说我们有一大串的随机数0和1,比方有10000个吧。 那么,在这10000个中,两个数成一对的00、01、10、11出现的概率应该是相当的,三个数成一对的000、001、010、011、100、101、110、111出现的概率也应该是相当的,四个数一对……以此类推。 两个数的称2元子集、三个数的称三元子集,等等 “某些子集的选 中概率比其他子集大些”,以2元子集为例,可能是01出现的概率明显比00、10、11出现的概率大。 大概就是这个意思吧,不知道有没有交代清楚。

33,007

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧