美国华人网FuninUSA_唐人社区_北美华人论坛:找礼品卡,找折扣,找报价,找工作,找内推,找项目,找股票

 找回密码
 立即注册

点击进入授权页面

只需一步,快速开始

  • 疑似钟汉良隐婚妻子低调现身剧组探班
  • 森碟家中下腰展现身体柔软 奥运冠军基因强大
  • 范冰冰被曝现身纽约街头 疑似敷着面膜就出来了
  • 曝杨幂手机贴纸系糯米最爱 细节展现母爱
  • 濒死到底是什么感觉?大脑缺氧...
  • 首本小学男生性别教材发布:看完变纯爷们
  • 所罗门群岛7.8级大地震:中国发布大规模海啸预警
  • 后怕!房屋翻修竟发现房顶里藏着手榴弹
  • 罕见!母猪生下猪仔:猪身猴脸吓坏众人
  • 天空同时出现“三个太阳”:让人叹为观止
  • 美国股市道琼指数一路狂飙超过19000点,创下百年来记录-美国房产信息
  • 2017年预测比特币增长165%到2000美元
  • 印度央行出人意料地保持利率不变
  • 如果特朗普削减公司税这些股票将飙升
  • 特朗普的税时代,4项投资方法
Logo1-800-PetMeds Free Shipping $49Take $10 Off Your First Order w/code: SAVE10 - 234 x 60
ASICS AmericaPagoda Piercing Banner 234x60Sierra Trading Post
搜索
查看: 3004|回复: 4

内推面经 -leetcode一道简单题讨论:给出n,k,列出所有组合可能- 唐人社区|北美华人论 ...

[复制链接]
TA在交友中心
0 0 29
  @ME:   

14

主题

240

帖子

269

积分

注册会员

Rank: 2

积分
269
QQ
发表于 2016-10-28 14:50:02 | 显示全部楼层 |阅读模式
分享到:
{$content}

唐人社区-北美华人论坛-内推面经版-leetcode一道简单题讨论:给出n,k,列出所有组合可能



JobHunting
标 题: leetcode一道简单题讨论:给出n,k,列出所有组合可能


题很简单,就是从n个数(1到n)里挑出k个数,return所有组合可能。我觉得下面有个
地方可以优化成n-depth+1,就不需要再往后面走了,因为这个解不成立,但是OJ上说
是错的,想了下竟然没想明白。有谁指点一下?

class Solution {
public:
void addComb(int n, int depth, int begin, vector& res,
vector& solution){
if (depth==0){
res.push_back(solution);
}
for (int i = begin; i【COACH美国代购总群】99634155
回复 百度谷歌雅虎搜狗搜搜有道360奇虎

举报

TA在交友中心
0 0 41
  @ME:   

20

主题

72

帖子

113

积分

注册会员

Rank: 2

积分
113
QQ
发表于 2016-10-28 15:54:09 | 显示全部楼层
JobHunting
标  题: leetcode一道简单题讨论:给出n,k,列出所有组合可能


题很简单,就是从n个数(1到n)里挑出k个数,return所有组合可能。我觉得下面有个
地方可以优化成n-depth+1,就不需要再往后面走了,因为这个解不成立,但是OJ上说
是错的,想了下竟然没想明白。有谁指点一下?

class Solution {
public:
    void addComb(int n, int depth, int begin, vector<vector<int>>& res,
vector<int>& solution){
        if (depth==0){
            res.push_back(solution);
        }
        for (int i = begin; i <= (n-depth+1); ++i){// i <= n is correct, why
n-depth+1 doesn't work?
            solution.push_back(i);
            addComb(n, depth-1, i+1, res, solution);
            solution.pop_back();
        }
        return;
    }
    vector<vector<int>> combine(int n, int k) {
        vector<vector<int>> res;
        vector<int> solution;
        addComb(n, k, 1, res, solution);
        return res;
    }
};
--
TA在交友中心
0 0 58
  @ME:   

24

主题

85

帖子

148

积分

注册会员

Rank: 2

积分
148
QQ
发表于 2016-10-28 16:38:24 | 显示全部楼层
JobHunting
标  题: Re: leetcode一道简单题讨论:给出n,k,列出所有组合可能


yes, thanks.
【 在 sapphirewing (Audrey的树) 的大作中提到: 】
: 不是“错”吧
: 而是cannot terminate吧
: 你在
: if (depth==0){
:     res.push_back(solution);
: }
: 这里就该return了
: 否则depth变成负的,你的(n-depth+1) 超越n,永远跑不完



--
TA在交友中心
0 0 63
  @ME:   

27

主题

94

帖子

152

积分

注册会员

Rank: 2

积分
152
QQ
发表于 2016-10-28 17:42:03 | 显示全部楼层
JobHunting
标  题: Re: leetcode一道简单题讨论:给出n,k,列出所有组合可能


不是“错”吧
而是cannot terminate吧

你在
if (depth==0){
    res.push_back(solution);
}
这里就该return了
否则depth变成负的,你的(n-depth+1) 超越n,永远跑不完
--
TA在交友中心
0 0 1090
  @ME:   

20

主题

1118

帖子

2208

积分

金牌会员

Rank: 6Rank: 6

积分
2208
QQ
发表于 2016-11-25 13:14:52 | 显示全部楼层
不错 支持一个了
您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

玩美生活FunInUSA.net 华人娱乐论坛发布的内推面经 -leetcode一道简单题讨论:给出n,k,列出所有组合可能- 唐人社区|北美华人论 ...帖子由网友提供或转载于网络,若发布的内推面经 -leetcode一道简单题讨论:给出n,k,列出所有组合可能- 唐人社区|北美华人论 ...侵犯了您的权益,请联系我们.
1&1 Hosting

Copyright ©2011 FunInUSA.com All Right Reserved.  Powered by Discuz! X3.0 小黑屋

本站信息均由会员发表,不代表美国华人网FunInUSA立场,如侵犯了您的权利请发帖投诉  技术支持: 美国华人网FunInUSA

安全联盟认证 安全联盟认证

快速回复 返回顶部 返回列表