国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

字典序排序問題

2019-11-10 23:50:33
字體:
來源:轉載
供稿:網友

思路: 字典序法中,對于數字1、2、3……n的排列,不同排列的先后關系是從左到右逐個比較對應的數字的先后來決定的。例如對于5個數字的排列 12354和12345,排列12345在前,排列12354在后。按照這樣的規定,5個數字的所有的排列中最前面的是12345,最后面的是 54321 字典序算法如下: 設P是1~n的一個全排列:p=p1p2……pn=p1p2……pj-1pjpj+1……pk-1pkpk+1……pn 1)從排列的右端開始,找出第一個比右邊數字小的數字的序號j(j從左端開始計算),即 j=max{i|pi

#include<iostream>#include<stdio.h>using namespace std;int main(){ int n; cin>>n; int ch[1005]; int i; for(i=1;i<=n;i++) cin>>ch[i]; for(i=n-1;i>=1;i--) { if(ch[i]<ch[i+1]) break; } int min; int count=0; int t; for(int j=i;j<=n;j++) { if(ch[j]>ch[i]) { if(count==0) { min=ch[j]; t=j; count=1; } else { if(min>ch[j]) { min=ch[j]; t=j; } } } } int k; k=ch[i]; ch[i]=ch[t]; ch[t]=k; for(int l=i+1,r=n;l<=(n-i-1)/2+i+1;l++,r--) { int a; a=ch[l]; ch[l]=ch[r]; ch[r]=a; } for(int i=1;i<=n;i++) cout<<ch[i]<<" "; return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 偏关县| 吴忠市| 新绛县| 吉木萨尔县| 新干县| 高雄市| 慈利县| 宁河县| 宜黄县| 湘阴县| 兰坪| 张家港市| 蓬溪县| 巫山县| 罗江县| 龙山县| 岱山县| 绥化市| 化隆| 繁峙县| 眉山市| 扶余县| 洮南市| 桃江县| 淳化县| 安图县| 新沂市| 阿图什市| 射洪县| 双流县| 平舆县| 绥宁县| 乌兰浩特市| 云南省| 会泽县| 宜黄县| 宣汉县| 临夏县| 饶阳县| 卫辉市| 天门市|