首页
题库
面试
求职
学习
竞赛
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收藏
3029浏览
热门推荐
相关试题
进程阻塞的原因不包括()
阿里巴巴集团
操作系统
测试
后端开发
客户端开发
前端开发
数据
运维/技术支持
评论
(21)
来自
阿里巴巴2013研发工程...
特殊的科学计数法
字符串
模拟
高精度
评论
(1)
let arr = [1, 2, ...
Javascript
评论
(1)
在 Vue 组件的生命周期中,当需...
Vue
评论
(1)
大量用户反馈“页面加载慢”,作为研...
产品常识
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题