我觉得这是一个很巧秒的算法。思路非常直接,从代码里可以很容易看出来,再单步调试查看set数组的值就可以很清楚地明白算法的过程。
        代码如下:
 1 #include <stdio.h>
 2 #define MAX 1000
 3
 4 int n=3;  //the number of set element
 5 int set[MAX]={1,2,3};
 6
 7 //move the set[0] to set[position]
 8 int rotate(int position)
 9 {
10     int temp=set[0];
11     int index;
12     for(index=1;index<=position;index++)
13         set[index-1]=set[index];
14     set[position]=temp;
15 }
16
17 void set_print()
18 {
19     int index;
20     for(index=0;index<n;index++)
21         printf("%d ",set[index]);
22     printf("\n");
23 }
24 int main()
25 {
26     int position=n-1;
27     while(position!=0)
28     {
29         position=n-1;
30         rotate(position);
31         set_print();
32         while(set[position]==position+1 && position!=0)
33         {
34             position--;
35             rotate(position);
36         }
37     }
38 }

本文转自NeilHappy 51CTO博客,原文链接:http://blog.51cto.com/neilhappy/1124040,如需转载请自行联系原作者

产生所有排列---旋转法------2013年1月22日相关推荐

  1. 熊顿 - 滚蛋吧!肿瘤君(2013年4月22日)

    <滚蛋吧!肿瘤君> 作 者:熊顿 系 列: 出 版:北京理工大学出版社 字 数:10千字 阅读完成:2013年4月22日 转载于:https://www.cnblogs.com/benbe ...

  2. 藏宝阁游戏服务器维护中,梦幻西游2013年1月22日藏宝阁维护公告 17173.com网络游戏:《梦幻西游》专区...

    亲爱的玩家朋友: 为提高服务质量,梦幻藏宝阁所有服务器将于2013年1月22日早上8:00停机维护,预计维护时间为早上8:00-10:00.如果在预定时间内无法完成维护内容,开机时间也将继续顺延. 请 ...

  3. 墨魂服务器维修,2013年10月22日定期维护公告

    亲爱的玩家朋友: 为保证服务器的运行稳定和服务质量,<梦幻西游2>所有服务器将于2013年10月22日上午8:00停机,进行每周例行的维护工作.预计维护时间为上午8:00-9:00.如果在 ...

  4. 2013年7月22日 匆匆

    第一篇 2013年7月19 回合肥 --人生是一个车站,进来了出去了:昨天,是一道风景,看见了,模糊了:时间是一个过客,记住了,遗忘了:生活是一个漏斗,得到了,失去了:情谊是一桌宴席,热了,冷了:迷惘 ...

  5. 2013年6月22日全国高校计算机联合考试广西考区一级笔试试题,全国高校计算机联合考试(广西考区)一级笔试试题卷6月25日b...

    全国高校计算机联合考试(广西考区)一级笔试试题卷 2011年6月25日闭卷考试考试时间:60分钟 试卷种类:[B] 考生注意:①本次考试试卷种类为[B],请考生务必将答题卡上的试卷种类栏中的[B]方格 ...

  6. 2013年6月22日全国高校计算机联合考试广西考区一级笔试试题,2021年全国高校计算机联合考试广西考区一级笔试试题卷6月26日B.doc...

    全国高校计算机联合考试(广西考区)一级笔试试题卷 6月26日闭卷考试考试时间:60分钟 试卷种类:[B] 考生注意:①本次考试试卷种类为[B],请考生务必将答题卡上试卷种类栏中[B]方格涂黑.②本次考 ...

  7. 2013年6月22日全国高校计算机联合考试广西考区一级笔试试题,全国高校计算机联合考试(广西考区)一级笔试试题卷2010年6月26日A.doc...

    全国高校计算机联合考试(广西考区)一级笔试试题卷2010年6月26日A 全国高校计算机联合考试 广西考区 一级笔试试题卷 2010年6月26日闭卷考试考试时间:60分钟 试卷种类:[A] 考生注意:① ...

  8. 2013年5月22日 Dave 在深圳

    第一篇 杭州 -- A man should have one dream at least, andone reason to hold on to it. If there's no place ...

  9. 2013年10月22日、|充实自己|看书看到恶心看教学视频看到吐|也许旷几次课也是值得的

    |充实自己| 看书看到恶心看教学视频看到吐 |也许旷几次课也是值得的

最新文章

  1. mysql突然要注册_mysql跳过登陆注册,找回root密码 (window平台)
  2. Spring中 @Autowired注解与@Resource注解的区别
  3. 创建型模式:单例模式(懒汉+饿汉+双锁校验+内部类+枚举)
  4. mysql any运算符_MySQL 运算符
  5. asp python 定时任务_python定时任务最强框架APScheduler详细教程
  6. 2021盐城中考有计算机考试吗,2021盐城中考总分满分是多少?各科目分值设置
  7. LeetCode 395. 至少有K个重复字符的最长子串(分治)
  8. 数据挖掘算法(logistic回归,随机森林,GBDT和xgboost)-腾讯云社区
  9. shell中$( )与${ }及$(( ))的区别
  10. 语言程序设计赵山林电子版_【特别策划】崇州“老市长”赵抃系列之一:做官要像江水保持清白...
  11. java赋值兼容原则,多态问题抛出(赋值兼容性原则遇上父类与子类同名函数的时候)...
  12. python中的is和==
  13. 【对讲机的那点事】玩无线电,你知道无线电信号是怎样发送和接收的?
  14. req.getParameterValues 输出前端乱码
  15. [已失效]坦白说(查看好友)抓包教程+解密工具
  16. autojs 绝美ui模板5
  17. 【图文教程】Shell基础知识
  18. 水利水电安全员考试单选练习题库(11)
  19. ThinkPHP6+swoole+easywechat使用教程
  20. Ae 效果详解:音频频谱

热门文章

  1. 【Ubuntu】dpkg-deb -c :查看deb文件中的内容
  2. 【Qt】Qt程序查看动态链接库(windows)
  3. 卢京潮自动控制原理ppt_独家资料|29套输配电相关视频教程+PPT课件 ,全方位讲解电气传动自动控制系统、供配电实用技术、自动控制原理,免费领!...
  4. 【蓝桥java】递归基础之智力训练
  5. 作业六:图像编码相关概念
  6. python捕获异常后处理_python异常捕获处理
  7. 小程序聊天室开发,发送文字,表情,图片,音频,视频,即时通讯,快速部署,可定制开发
  8. 样式集(二) 信息填写样式模板
  9. php解决 mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysq
  10. 3-flutter 项目结构 资源 依赖