亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C > 正文

C語言將數組中元素的數排序輸出的相關問題解決

2020-01-26 14:40:36
字體:
來源:轉載
供稿:網友

 問題描述:輸入一個正整數數組,將它們連接起來排成一個數,輸出能排出的所有數字中最小的一個。例如輸入數組{32,  321},則輸出這兩個能排成的最小數字32132。請給出解決問題的算法,并證明該算法。
      思路:先將整數數組轉為字符串數組,然后字符串數組進行排序,最后依次輸出字符串數組即可。這里注意的是字符串的比較函數需要重新定義,不是比較a和b,而是比較ab與 ba。如果ab < ba,則a < b;如果ab > ba,則a > b;如果ab = ba,則a = b。比較函數的定義是本解決方案的關鍵。
      證明:為什么這樣排個序就可以了呢?簡單證明一下。根據算法,如果a < b,那么a排在b前面,否則b排在a前面??衫梅醋C法,假設排成的最小數字為xxxxxx,并且至少存在一對字符串滿足這個關系:a > b,但是在組成的數字中a排在b前面。根據a和b出現的位置,分三種情況考慮:
      (1)xxxxab,用ba代替ab可以得到xxxxba,這個數字是小于xxxxab,與假設矛盾。因此排成的最小數字中,不存在上述假設的關系。
      (2)abxxxx,用ba代替ab可以得到baxxxx,這個數字是小于abxxxx,與假設矛盾。因此排成的最小數字中,不存在上述假設的關系。
      (3)axxxxb,這一步證明麻煩了一點??梢詫⒅虚g部分看成一個整體ayb,則有ay < ya,yb < by成立。將ay和by表示成10進制數字形式,則有下述關系式,這里a,y,b的位數分別為n,m,k。
        關系1: ay < ya => a * 10^m + y < y * 10^n + a => a * 10^m - a < y * 10^n - y => a( 10^m - 1)/( 10^n - 1) < y
        關系2: yb < by => y * 10^k + b < b * 10^m + y => y * 10^k - y < b * 10^m - b => y < b( 10^m -1)/( 10^k -1)
        關系3: a( 10^m - 1)/( 10^n - 1) < y < b( 10^m -1)/( 10^k -1)  => a/( 10^n - 1)< b/( 10^k -1) => a*10^k - a < b * 10^n - b =>a*10^k + b < b * 10^n + a => a < b
       這與假設a > b矛盾。因此排成的最小數字中,不存在上述假設的關系。
       綜上所述,得出假設不成立,從而得出結論:對于排成的最小數字,不存在滿足下述關系的一對字符串:a > b,但是在組成的數字中a出現在b的前面。從而得出算法是正確的。
      參考代碼:

//重新定義比較函數對象 struct compare {  bool operator() (const string &src1, const string &src2)  {   string s1 = src1 + src2;   string s2 = src2 + src1;   return s1 < s2; //升序排列,如果改為s1 > s2則為逆序排列  } }; //函數功能 : 把數組排成最小的數 //函數參數 : pArray為數組,num為數組元素個數 //返回值 : 無 void ComArrayMin(int *pArray, int num) {  int i;  string *pStrArray = new string[num];   for(i = 0; i < num; i++) //將數字轉換為字符串  {    stringstream stream;   stream<<pArray[i];   stream>>pStrArray[i];  }   sort(pStrArray, pStrArray + num, compare()); //字符串數組排序   for(i = 0; i < num; i++) //打印字符串數組   cout<<pStrArray[i];  cout<<endl;   delete [] pStrArray; } 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产亚洲一区精品| 国模精品视频一区二区| 92裸体在线视频网站| 国产精品视频久久久久| 国产日韩欧美成人| 成人免费视频a| 欧美一级片在线播放| 欧美成人国产va精品日本一级| 日韩激情av在线免费观看| 日韩中文字幕免费| 97国产精品人人爽人人做| 在线播放国产精品| 欧美一级淫片videoshd| 国产手机视频精品| 97精品一区二区三区| 欧美国产日产韩国视频| 欧美精品久久久久久久| 永久555www成人免费| 国产精品视频26uuu| 久久综合免费视频| 亚洲精品中文字幕有码专区| 亚洲欧美另类在线观看| 国产精品国语对白| xxxxxxxxx欧美| 国产精品九九九| 亚洲一区亚洲二区亚洲三区| 久久成年人免费电影| 在线a欧美视频| 欧美怡春院一区二区三区| 在线色欧美三级视频| 国产午夜精品一区理论片飘花| www.欧美视频| 一区二区三区国产视频| 91影院在线免费观看视频| 91香蕉电影院| 国产精品视频白浆免费视频| 国产99久久精品一区二区永久免费| 欧美一级大片视频| 色综合视频网站| 亚洲欧洲免费视频| 欧美亚洲成人xxx| 亚洲激情免费观看| 综合激情国产一区| 成人乱人伦精品视频在线观看| 亚洲欧美制服中文字幕| 亚洲人成网站999久久久综合| 日本久久91av| 日韩精品极品毛片系列视频| 久久精品国产一区二区电影| 国产精品免费观看在线| 国产精品9999| 亚洲欧美激情一区| 国产一区二区三区精品久久久| 欧美激情奇米色| 欧美精品videosex牲欧美| 青青在线视频一区二区三区| 国产精品美乳在线观看| 日韩视频在线观看免费| 97福利一区二区| 在线日韩日本国产亚洲| 国产精品精品久久久久久| 亚洲日韩中文字幕在线播放| 欧美日韩中文字幕在线| 在线观看国产精品日韩av| 欧美日韩国产丝袜另类| 91网站免费观看| 国产69久久精品成人看| 成人a在线视频| 中文综合在线观看| 日韩麻豆第一页| 亚洲成人久久网| 8050国产精品久久久久久| 欧美在线视频一二三| 欧美美最猛性xxxxxx| 97精品久久久| 中文在线不卡视频| 91系列在线播放| 曰本色欧美视频在线| 国内伊人久久久久久网站视频| 欧美极品xxxx| 成人免费黄色网| 亚洲性无码av在线| 国产精品视频免费在线观看| 不卡毛片在线看| 福利二区91精品bt7086| 日韩在线高清视频| 国产99久久精品一区二区永久免费| 欧美激情18p| 亚洲综合一区二区不卡| 欧美日韩性视频在线| 亚洲free性xxxx护士白浆| 日韩欧美在线第一页| 日韩成人在线网站| 日韩精品欧美激情| 国产精品视频久久| 人体精品一二三区| 91精品美女在线| 黑人巨大精品欧美一区二区三区| 欧美在线一级va免费观看| 精品中文字幕久久久久久| 欧美日韩在线视频一区二区| 欧美巨乳在线观看| 91精品国产91久久久久久| 日韩欧美在线网址| 久久久在线观看| 久久人人爽人人爽爽久久| 欧美视频13p| 国产一区二区三区免费视频| 久久在线免费视频| 亚洲人成电影网站色xx| 亚洲欧美一区二区三区四区| 中文字幕久热精品在线视频| 欧美激情第三页| 国产精品狼人色视频一区| 久久中文字幕国产| 欧美日韩亚洲视频一区| 日韩有码在线电影| 欧美日韩xxx| 日韩电影在线观看免费| 亚洲奶大毛多的老太婆| 亚洲裸体xxxx| 亚洲国产精品va在线| 日本精品久久久| 欧美日韩免费观看中文| 国产小视频国产精品| 深夜福利一区二区| 欧美性猛交99久久久久99按摩| 亚洲欧美日韩直播| 最近2019中文字幕大全第二页| 久久久久久久久91| 成人欧美一区二区三区黑人| 精品国产成人在线| 久热精品视频在线免费观看| 欧美性猛交xxxx乱大交3| 日韩精品www| 亚洲自拍偷拍在线| 欧美极品少妇全裸体| 亚洲精品99久久久久| 社区色欧美激情 | 欧美中文字幕视频在线观看| 91亚洲精品久久久久久久久久久久| 欧美日韩亚洲视频一区| 孩xxxx性bbbb欧美| 深夜福利91大全| 日韩精品视频在线免费观看| 欧美成人午夜激情在线| 日韩美女在线播放| 久久久久久尹人网香蕉| 国产精品亚洲视频在线观看| 亚洲日韩欧美视频| 亚洲成色777777女色窝| 国产精品白丝jk喷水视频一区| 26uuu另类亚洲欧美日本老年| 欧美久久精品一级黑人c片| 91美女片黄在线观看游戏| 精品一区二区三区四区| 欧美国产第一页| 久久久av网站| 欧美激情aaaa| 神马国产精品影院av| 在线播放日韩av| 国产精品久久久久免费a∨大胸| 国产精品久久久久久久一区探花| 亚洲国产另类 国产精品国产免费|