1
EPr2hh6LADQWqRVH 2014-02-08 12:06:22 +08:00
好强大
|
2
6711411 2014-02-08 13:15:36 +08:00
超厉害啊.
|
3
leofml 2014-02-08 13:46:13 +08:00
yunshipei.com 有兴趣的话, 可以过来聊聊 :)
|
4
bingwenshi 2014-02-08 13:50:27 +08:00
jobs.douban.com Welcome ~
|
5
hpyhacking 2014-02-08 13:58:23 +08:00
你好 我们是貔貅开源组(世界上首个全民所有的交易所),隶属李笑来的比特基金,技术栈后端 Ruby 、Erlang ,前端 Coffee、 Less,有兴趣可以来找我聊聊。
办公地点立方庭 弹性工作制 电话 18500088773 |
6
paolongtao 2014-02-08 14:00:22 +08:00
这么厉害,问个问题,打印从N个整数中取k个整数的全部组合,怎样效率最高,时间复杂度多少
|
7
wb14123 OP @paolongtao
只想到了这个解法: func = (n, k) => array = [] inner = (array, sum, current) => return console.log array if sum == k return if current > n inner array.concat(current), sum + 1, current + 1 inner array, sum, current + 1 if sum + n - current >= k inner [], 0, 1 func 20, 10 这个算法中每次递归都传入了一个新的数组,显然空间复杂度比较高。 在网上找到了一篇比较好的该问题解法:http://hi.baidu.com/_vinee/item/7a209326816a8b192b0f1ce0 其中解法二只利用了一个数组,很巧妙。 时间复杂度,应该大约等于n!。因为是N个数取k个的组合,所以组合数为C(n,k),每个组合中有k个数。所以最好的算法时间复杂度应该也不会低于k*C(n,k)。 如果有不对的地方,还请指教。 |
8
wb14123 OP 粘贴过来缩进都没有了。。。
|
10
folse 2014-02-08 19:52:46 +08:00
|
11
julyclyde 2014-02-09 20:51:39 +08:00
|
12
julyclyde 2014-02-09 20:52:13 +08:00
会的有点儿多,你得自己选个方向。要不然不太容易推荐
|
13
wb14123 OP @bingwenshi 投了系统软件工程师,还没回复,能推荐一下吗?多谢~
|
14
bingwenshi 2014-02-12 15:32:56 +08:00
@wb14123 最近刚上班, 再等等, 如果没消息, 我帮你问问
|
15
wac81 2014-02-15 01:25:13 +08:00
创新业务,亚联 wuac@asiainfo-linkage.com
|