时间:2015-07-02 来源:

算法练习:排列组合之全排列【综合】

问题描述 输入一个不含相同数字的序列网页外包接活,输出所有可能的排列.

版权声明:本文为博主原创文章,网页外包接活使用递归方法:典型的在for循环内调用递归函数.不同的是,div+css制作必须等到所有的数字均在集合里才能输出.为了记录每个数字的使用情况,div+css报价 bUseFlag ); //重置,html切图制作即回溯 mDstArrayTemp.pop_back(); bUseFlag[i] = false; } } } //递归求解全排列(源序列中含有相同的元素) void FullPermutationEx( const IntArray& mSrcArray, BoolArray& bUseFlag ) { if ( mDstArrayTemp.size() >= mSrcArray.size() ) { //求得一个结果 gResultSet.push_back( mDstArrayTemp ); } else { for( int i = 0; i < mSrcArray.size(); ++i ) { // //已经被使用 // if ( bUseFlag[i] ) continue; //除了考虑当前使得情况外web前端制作,还需判断是否为重复元素的第一个 //如果前一个相同元素还未被使用,web前端制作那么当前元素也不应该被使用承接网页制作, mDstArrayTemp, bUseFlag ); //重置,web切图报价即回溯 mDstArrayTemp.pop_back(); bUseFlag[i] = false; } } } //输出结果集 void OutPutResultSet() { if ( gResultSet.size() <= 20 ) { for( ResultSet::iterator it = gResultSet.begin(); it != gResultSet.end(); ++it ) { for( IntArray::iterator itTemp = it->begin(); itTemp != it->end(); ++itTemp ) { cout << *itTemp << " "; } cout << endl; } } cout << "总共结果数:" << gResultSet.size() << endl; cout << "---------------------------------------" << endl; } int main() { IntArray mSrcArray; IntArray mDstArrayTemp; BoolArray bUseFlag; while( true ) { //构造源数据 int nTemp = 0; mSrcArray.clear(); bUseFlag.clear(); while( cin >> nTemp ) { if ( nTemp == 0 ) break; mSrcArray.push_back( nTemp ); bUseFlag.push_back( false ); } //从小到大排序 sort( mSrcArray.begin(), mDstArrayTemp, mDstArrayTemp, bUseFlag ); //输出结果 OutPutResultSet(); } return 0; }

问题分析

 

实现代码

 

作者:山丘儿 转载请标明出处,web前端制作谢谢.原文地址:http://blog.csdn.net/s634772208/article/details/46712519

扩展问题 如果数列中含有重复的数字承接网页制作,并且输出的结果不含重复组合,兼职手机网页制作那么怎么处理?比如web切图报价,1,输出{1,2},2, {2, 1}.我们在挑选数字的时候符合w3c标准,除了考虑当前使用情况外,html切图制作还需要判断前一个相同元素的使用情况.如果前一个相同元素还未被使用网页外包接活,那么当前元素也不应该被使用,网页外包接活确保输出是唯一的.详见代码部分的FullPermutationEx函数.

 

系列文章说明: 1.本系列文章[算法练习],仅仅是本人学习过程的一个记录以及自我激励,web前端制作没有什么说教的意思.如果能给读者带来些许知识及感悟承接网页制作,那是我的荣幸. 2.本系列文章是本人学习陈东锋老师《进军硅谷,div前端切图程序员面试揭秘》一书而写的一些心得体会web切图报价,文章大多数观点均来自此书,web切图报价特此说明! 3.文章之中符合w3c标准,难免有诸多的错误与不足,符合w3c标准欢迎读者批评指正网页外包接活,谢谢.

 

点击次数:3547
作者:
web前端行业资讯
Web new NewsList
英特尔宣布与法拉利跨界合作欲将AI技术用于赛车运动 ,,2018年01月11日甲骨文服务器出漏洞:攻击者用漏洞挖矿获取加密货币 ,,2018年01月11日用深度学习设计图像视频压缩算法:更简洁、更强大 ,,2018年01月11日Ubuntu内核和NVIDIA更新:修复Meltdown和Spectre两处漏洞 ,,2018年01月11日AntDesign3.1.1发布,阿里企业级UI设计语言 ,,2018年01月11日微信「跳一跳」带火小游戏,开发者如何快速上手? ,,2018年01月11日谷歌公布最新安卓系统份额:你用上奥利奥了么? ,,2018年01月11日腾讯开发出“3D音效”算法:普通耳机实现3D实时语音效果 ,,2018年01月11日谷歌工程师点赞中国程序员实现Node.js启动超4倍提速 ,,2018年01月11日三星电子总裁兼CE部门负责人金炫奭:万物互联时代到来 ,,2018年01月11日NVIDIA和大众合作建立智能驾驶助手 ,,2018年01月11日GIMPS项目报告发现已知最大素数 ,,2018年01月11日微软与生物技术公司开展AI驱动的血液检测同时诊断数十种疾病 ,,2018年01月11日微软跨平台移动开发工具套件HockeyApp宣布免费 ,,2018年01月11日《硅谷》里神乎其神的压缩技术,AI正在一点点做出来 ,,2018年01月11日LinuxMint19代号敲定为“Tara”预计2018年5月至6月期间发布 ,,2018年01月11日Facebook发布wav2letter工具包,用于端到端自动语音识别 ,,2018年01月11日开源数据库ArangoDB正进行约1156万美元股权融资 ,,2018年01月11日IntelCPU漏洞闹大:腾讯云紧急升级 ,,2018年01月11日2018年1月全球数据库排名:Redis夺回第八 ,,2018年01月11日Lyft将联手无人驾驶公司于CES上展示无人驾驶汽车 ,,2018年01月11日京东X无人超市首家社会门店开业:刷脸进、微信自动结算 ,,2018年01月11日担心被AI取代是杞人忧天?高晓松跨年演讲说的有几分对 ,,2018年01月11日免费授权技术许可Intel宣布在未来CPU中集成雷电3 ,,2018年01月11日算法决定你在社交媒体上看到的信息 ,,2018年01月11日谷歌安全博客披露“英特尔内核漏洞”更多细节 ,,2018年01月04日Postgres10开发者新特性 ,,2017年12月28日阿里巴巴、狗尾草、苏大联合论文:基于对抗学习的众包标注用于中文命名实体识别 ,,2017年12月28日柯洁的2017:20岁,与AI斗与人类斗,其乐无穷 ,,2017年12月28日如果机器人拥有痛觉,这个世界会有哪些不一样? ,,2017年12月28日多线程【综合】2015年08月24日JavaScript修改CSS伪元素:after和:before的样式 【系统运维】2015年07月01日九度1140-回溯-八皇后 【移动开发】2015年08月28日HDU2067小兔的棋盘【DP】 【编程语言】2015年01月19日codeforceD.Password【编程语言】2014年11月10日javascript精粹笔记2014年01月29日JavaScript入门教程(10):认识其他对象2014年01月28日BZOJ3884上帝与集合的正确用法 【Web前端】2015年02月28日MyEclipse破解已成功 【编程语言】2014年12月16日00-自测3.数组元素循环右移问题(20)【移动开发】2015年04月13日AndroidInternals:主界面LaunchActivity是如何被启动的? 【移动开发】2015年01月27日安装IE7后仍然也可以使用IE6的方法2014年01月29日严重:ErrorlistenerStart 【架构设计】2015年08月24日MySQL系列:innodb引擎分析之线程并发同步机制 【移动开发】2014年11月18日送上最新鲜的互联网行业新闻-【2015-05-11】 【系统运维】2015年05月12日Linux-中断和中断处理 【编程语言】2015年07月01日构造、析构、拷贝语意学 【编程语言】2015年03月09日Javascript设计模式(二)闭包2014年01月29日【呆子谈管理】:用顺其自然的方式去做管理 【数据库】2015年01月19日揭秘社交网站的三个安全陷阱2014年01月28日jQueryUI实现email输入提示实例2014年01月29日使用RecyclerView写树形结构的TreeRecyclerView2015年06月26日javascript放大镜效果的简单实现2014年01月29日一流无线客户端是怎样炼成的 【编程语言】2014年12月01日如何计算下载一个文件需要多长时间?2014年01月29日屏幕分辨率1366x768首次超过1024x768 ,,2016年06月23日仿英语流利说取词放大控件的实现 【移动开发】2015年06月11日C语言动态规划(7)___过河(VijosP1002)【编程语言】2015年01月04日LightOJ1231CoinChange(I)(背包计数模板题) 【编程语言】2015年04月07日JavaScriptdelete属性的使用2014年01月29日
我们保证
We guarantee
> psd效果文件手工切图,保证图片效果最好体积最小利于传输
> 100%手写的HTML(DIV+CSS)编码,绝对符合W3C标准
> 代码精简、css沉余量小、搜索引擎扫描迅速,网页打开快捷
> 应用Css Sprite能够减少HTTP请求数,提高网页性能
> 跨浏览器兼容(IE6、7、8、9,Firefox火狐,Chrome谷歌)