日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

算法竞赛入门经典读书笔记(三)7.2枚举排列

發布時間:2025/6/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 算法竞赛入门经典读书笔记(三)7.2枚举排列 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

7.2.1生成1~n的所有排列

遞歸調用的方法可以實現。

[cpp]?view plaincopy
  • #include?<iostream>??
  • using?namespace?std;??
  • void?print_permutation(int?n,int?*A,int?cur){??
  • int?i,j;??
  • if(cur==n){??
  • for(i=0;i<n;i++)???
  • cout<<A[i];??
  • cout<<endl;??
  • }??
  • else?for(i=1;i<=n;i++){??
  • int?ok=1;??
  • for(j=0;j<cur;j++)??
  • if(A[j]==i)?ok=0;??
  • if(ok){??
  • A[cur]=i;??
  • print_permutation(n,A,cur+1);??
  • }??
  • }??
  • }??
  • int?main()??
  • {??
  • int?n,A[100],cur=0;??
  • cout<<"請輸入整數n(n<=100):\n";??
  • while(cin>>n)??
  • {??
  • for(int?i=0;i<n;i++){??
  • A[i]=i+1;??
  • }???
  • print_permutation(n,A,cur);??
  • }??
  • return?0;??
  • }??

  • 生成可重集的排序

    [cpp]?view plaincopy
  • #include?<iostream>??
  • #include?<algorithm>??
  • using?namespace?std;??
  • void?print_permutation(int?n,int?*P,int?*A,int?cur){??
  • ????int?i,j;??
  • ????if(cur==n){??
  • ????????for(i=0;i<n;i++)???
  • ????????cout<<A[i]<<"?";??
  • ????????cout<<endl;??
  • ????}??
  • ????else?for(i=0;i<n;i++)??
  • ????????if(!i||P[i]!=P[i-1]){??
  • ????????int?c1=0,c2=0;??
  • ????????for(j=0;j<cur;j++)?if(A[j]==P[i])?c1++;??
  • ????????for(j=0;j<n;j++)?if(P[j]==P[i])?c2++;??
  • ????????if(c1<c2){??
  • ????????????A[cur]=P[i];??
  • ????????????print_permutation(n,P,A,cur+1);??
  • ????????}??
  • ????}??
  • }??
  • int?main()??
  • {??
  • ????int?n,A[100],cur;??
  • ????int?P[100];??
  • ????cin>>n;??
  • ????for(int?i=0;i<n;i++)??
  • ??????cin>>P[i];??
  • ????sort(P,P+n);??????
  • ????cur=0;??
  • ????print_permutation(n,P,A,cur);??
  • ????return?0;??
  • }??


  • 附:利用STL中的algorithm也可以~~灰常簡單地說

    [cpp]?view plaincopy
  • #include?<iostream>??
  • #include?<algorithm>??
  • using?namespace?std;??
  • int?main()??
  • {??
  • int?n,A[100],cur=0;??
  • cout<<"請輸入整數n(n<=100):\n";??
  • cin>>n;??
  • int?i;??
  • for(i=0;i<n;i++){??
  • A[i]=i+1;??
  • }???
  • do{??
  • for(i=0;i<n;i++)???
  • cout<<A[i];??
  • cout<<endl;??
  • }while(next_permutation(A,A+i));??
  • return?0;??
  • }??
  • 利用stl生成給定集合的全排列

    [cpp]?view plaincopy
  • #include<iostream>??
  • #include<algorithm>??
  • using?namespace?std;??
  • int?main(){??
  • int?n,p[10];??
  • cin>>n;??
  • for(int?i=0;i<n;i++){??
  • cin>>p[i];??
  • }??
  • cout<<endl;??
  • sort(p,p+n);??
  • do{??
  • for(int?i=0;i<n;i++)??
  • cout<<p[i]<<"?";??
  • cout<<endl;??
  • }while(next_permutation(p,p+n));??
  • return?0;??
  • } ?
  • 總結

    以上是生活随笔為你收集整理的算法竞赛入门经典读书笔记(三)7.2枚举排列的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 日韩美女视频一区 | 亚洲依依 | 熟女少妇内射日韩亚洲 | 亚洲男女激情 | 亚洲国产一二三区 | 亚洲中文字幕久久无码 | 成人免费91 | 91国偷自产一区二区三区观看 | 亚洲男人天堂2024 | 国产污污视频 | 国产成人99久久亚洲综合精品 | 午夜精品在线 | 久久最新免费视频 | 韩国裸体网站 | 国产精品1区2区 | 国产精品午夜视频 | 一级黄色免费看 | 国产伦精品免费视频 | 免费在线观看网址入口 | 免费久久久 | 91网页版 | 欧美熟妇另类久久久久久不卡 | 亚洲欧美日韩国产一区二区三区 | 国产成人在线看 | 秋霞二区| 亚洲成年人在线观看 | 日本护士做爰视频 | 亚洲小说春色综合另类 | 欧美野外猛男的大粗鳮 | 操夜夜操 | 香蕉视频黄在线观看 | 少妇高潮21p | 富二代成人短视频 | 99精品国产成人一区二区 | 国产精品亲子伦对白 | 成人日韩精品 | 日本午夜三级 | 国产内谢 | 亚洲一区二区三区香蕉 | 91你懂的 | 乐播av一区二区三区 | 免费高清成人 | 污污污污污污www网站免费 | 欧美放荡性医生videos | 97操操 | 天天综合中文字幕 | 国产情侣免费视频 | 久久久香蕉 | 亚洲自拍偷拍网 | 性色一区二区三区 | 偷拍视频久久 | 久久久一级 | 二级黄色录像 | 依依成人在线视频 | 日本国产精品视频 | 黑人操亚洲美女 | 久久精品爱| 欧美激情在线观看 | 亚洲精品aa | 99精品视频免费看 | 国产欧美日韩综合 | 国产日韩欧美专区 | 日韩精品中文字幕一区 | 男女免费看 | 国外成人性视频免费 | 亚洲麻豆av| 国产欧美三级 | 少妇xxx| 免费h片网站 | 香蕉综合在线 | 欧美色图亚洲色 | 美国一级特黄 | 最新久久久 | ass极品水嫩小美女ass | 性xxxxxxxxx| 国产最新在线 | 免费在线成人av | 91在线免费播放 | 欧美日韩激情一区 | 国产91丝袜在线播放 | av视| 蜜乳av一区 | 中文在线观看视频 | 动漫美女视频 | 亚洲自拍天堂 | 日韩人妻一区二区三区蜜桃视频 | 91毛片在线观看 | 国家队动漫免费观看在线观看晨光 | 丰满人妻一区二区三区性色 | h片在线免费看 | 久久99九九| 69精品视频 | 激情久久免费视频 | 激情总合网 | 欧美成人乱码一二三四区免费 | av看片资源 | 亚洲成人www | 在线电影一区二区 | jul023被夫上司连续侵犯 |