锁定老帖子 主题:今天面试遇到了雷人面试题求解
该帖已经被评为隐藏帖
|
|
---|---|
作者 | 正文 |
发表时间:2010-08-17
最后修改:2010-08-17
有52张扑克牌要随机发牌给四个玩家,并且四个玩家牌的数量是相同的?
用java语言写出来 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-08-17
这个有很雷吗?
|
|
返回顶楼 | |
发表时间:2010-08-17
这个不要太简单
|
|
返回顶楼 | |
发表时间:2010-08-17
LZ哪里被雷了?
|
|
返回顶楼 | |
发表时间:2010-08-17
关键是怎么处理重复发牌的问题。 有什么O(1)的算法。。。我也等求解~
|
|
返回顶楼 | |
发表时间:2010-08-17
不雷人 请出代码 构思也行啊!!!
|
|
返回顶楼 | |
发表时间:2010-08-17
最后修改:2010-08-17
这样可以不:
1.生成52张牌放在数组Arr里,当然这时牌是有序的。 2.for(i<0;i<n;i++),产生两个随机数m1、m2在0-52之间,交换Arr下标m1、m2位置的元素,这样就无序了。 3.4个人,取Arr前13个元素给第1个人,接着取后面13张给第2个人,依次··· |
|
返回顶楼 | |
发表时间:2010-08-17
楼上随机洗牌后可以压栈,然后发牌时一个个出栈就行了。
|
|
返回顶楼 | |
发表时间:2010-08-17
最后修改:2010-08-17
...按长度取模,可以避免重复
|
|
返回顶楼 | |
发表时间:2010-08-17
四个线程并发访问五十二张扑克牌.
线程退出条件:次数i<52/4 |
|
返回顶楼 | |