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

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

字典序排序問題

2019-11-11 01:58:53
字體:
來源:轉載
供稿:網友

思路: 字典序法中,對于數字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;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 方城县| 临沭县| 汶川县| 清原| 温宿县| 南安市| 万荣县| 治多县| 积石山| 吉林市| 湘潭县| 黑水县| 浦县| 仁化县| 平塘县| 东乡族自治县| 财经| 黑河市| 工布江达县| 江陵县| 牡丹江市| 仁布县| 绥中县| 雷州市| 重庆市| 大姚县| 桓台县| 天祝| 中超| 呼图壁县| 永春县| 万荣县| 高邑县| 郁南县| 昭平县| 昭苏县| 彭泽县| 晋宁县| 呼图壁县| 鄂伦春自治旗| 元江|