把數(shù)組排成最小數(shù)

解題思路:
兩個數(shù) a 和 b , 如果 ab < ba 那么ab就是排序的最小數(shù),a應(yīng)該在左邊。

#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
using namespace std;
// 定義排序規(guī)則
bool compare(const string& str1, const string &str2)
{
    string s1=str1+str2;
    string s2=str2+str1;
    return s1<s2;
}
// 排序算法
void ComArrayMin(int *pArray, int num)
{
    int i;
    string *pStrArray=new string[num];
// 將整形數(shù)組轉(zhuǎn)換成 字符串?dāng)?shù)組
    for(i=0; i<num; i++)
    {
        stringstream stream;
        stream<<pArray[i];
        stream>>pStrArray[i];
    }
// 利用sort函數(shù) 和 compare 規(guī)則進行排序
    sort(pStrArray, pStrArray+num, compare);
// 打印出這個最小數(shù)字的字符串形式
    for(i=0; i<num; i++)
        cout<<pStrArray[i];

    cout<<endl;
// 釋放這個指針
    delete[] pStrArray;

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容