首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
给定n个数(1,2,......,n),从中选取任意两两不同
[问答题]
给定n个数(1,2,......,n),从中选取任意两两不同的k个数请编写程序输出所有的可能的选择,则要求不重不漏。
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(12)
分享
纠错
1个回答
添加回答
1
牛客604465号
程序思路:定义一个数组,其下标表示1到n个数,数组元素的值为1表示其下标代数的数被选中,为零则没被选中。
首先初始化,将数组前k个元素置1,表示第一个组合为前k个数。 然后从左到右扫描数组元素值的“10”组合,找到第一个“10”组合后将其变为“01”组合。
同时将其左边的所有“1”全部移到数组的最左端。 当第一个“1”移动到数组的n-k的位置,即k个“1”全部移动到最右端时,就得到了最后一个组合。
发表于 2014-10-25 00:26:14
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
数组
复杂度
阿里巴巴
上传者:
timidavid
难度:
1条回答
12收藏
2886浏览
热门推荐
相关试题
进程阻塞的原因不包括()
阿里巴巴
操作系统
测试
后端开发
客户端开发
前端开发
数据
运维/技术支持
评论
(21)
来自
阿里巴巴2013研发工程...
3.1996至2003年间,从事高...
资料分析
言语理解与表达
资料分析
评论
(1)
电路板布线的时候尽量采用( )折线布线
PCB
评论
(1)
市场与销售的区别在哪里?
市场营销
评论
(1)
图中U和I分别为
电路基础
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题