没事散点分

iisbsd 2010-06-15 11:45:31
前两天一个QA的朋友让帮着写这个程序,看看大家的想法和我的是不是一致——当时要的很急,几分钟,但是后来想,也没什么特别好的别的解法。

给定一个数组,N个元素,要求列出所有N元组(我估计是用来测试所有组合的)。简单的例子:

原始数据(1,2),结果是(1,1), (1,2), (2,1), (2,2)
原始数据是(1,2,3),结果是(1,1,1), (1,1,2), (1,1,3), (1,2,1), (1,2,2), (1,2,3), ... (3,3,3)

抱歉我对算法和排列组合不熟,不知道是不是有更好的描述问题的方法,有什么不清楚的尽管问。

拿C/C++写吧,放在这个论坛下面是因为这里让我能给200分。
...全文
218 39 打赏 收藏 转发到动态 举报
写回复
用AI写文章
39 条回复
切换为时间正序
请发表友善的回复…
发表回复
iisbsd 2010-06-18
  • 打赏
  • 举报
回复
结了吧,其实主要目的是散分,代码多的人多给点分,相信大家没意见。
louyong0571 2010-06-18
  • 打赏
  • 举报
回复
只接分,纯观望
surf515 2010-06-18
  • 打赏
  • 举报
回复
没事接点分
老青蛙嘎嘎嘎 2010-06-18
  • 打赏
  • 举报
回复
接分。。。
yangtseriver1020 2010-06-17
  • 打赏
  • 举报
回复
看了下 ,不难,但是说用递归其实并不好,代码少 不一定就是效率高。
接分~~~
dwl1989 2010-06-17
  • 打赏
  • 举报
回复
用排列+组合应该不错!
yuanzhang198711 2010-06-17
  • 打赏
  • 举报
回复
简单明了,但是这个就是蛮力法了,当到8的时候蛮要时间的,效率很低哦,我觉得还有改进的方法。
[Quote=引用 15 楼 brookmill 的回复:]
这种算法网上应该有很多,很容易搜到。
今天刚好没什么事,自己随便写了一个,比我开始想的还要容易,不过效率大概不高。
[/Quote]
sparrow081 2010-06-17
  • 打赏
  • 举报
回复
题本身很有趣

接分
morris88 2010-06-17
  • 打赏
  • 举报
回复
huihui1988 2010-06-17
  • 打赏
  • 举报
回复
我是来拿分的。。。
Wind_Runner 2010-06-17
  • 打赏
  • 举报
回复
旁观接分
wibnmo 2010-06-17
  • 打赏
  • 举报
回复
接个分。。
liel_tang 2010-06-17
  • 打赏
  • 举报
回复
#26楼 得分:0回复于:2010-06-17 17:14:13

这个是啥玩意儿啊
liel_tang 2010-06-17
  • 打赏
  • 举报
回复
飘过,接分啦~
谢谢了线~
zjf30366 2010-06-17
  • 打赏
  • 举报
回复
blueskysee 2010-06-17
  • 打赏
  • 举报
回复
低调路过
iisbsd 2010-06-16
  • 打赏
  • 举报
回复
还没仔细看各位的答案,感觉上5楼的应该多看一眼(抱歉,STL不熟)。

我认为递归是个优雅的蠢办法,这里是C/C++,你要是用LISP解,我就不攻击递归了。

我的解法比较直接,共有N的N次方个结果,然后填充每个结果,计算方法类似于计算N进制的表达。我很怀疑那些不用递归,但是循环只用到N而不是N的N次方的答案的正确性。

欢迎拍砖。
renjianguokeivor 2010-06-16
  • 打赏
  • 举报
回复
学习,接分!
wangjiepro 2010-06-16
  • 打赏
  • 举报
回复
路过,低调接分
cocat 2010-06-16
  • 打赏
  • 举报
回复
学习了~~~
加载更多回复(19)

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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