整数型数组元素拼接问题

来源:互联网 发布:美发店免费收银软件 编辑:程序博客网 时间:2024/05/18 22:40

找给定的整数型数组中将数拼接成的正整数中最小的,如给定 123 321 ,则形成的最小的整数位123321

利用STL中的算法快速实现,代码如下:

#include <iostream>#include <string>#include <sstream>#include <algorithm>using namespace std;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];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;}int main(){int Num;cin>>Num;int *pArray=new int[Num];for(int i=0; i<Num; i++)   cin>>pArray[i];ComArrayMin(pArray, Num);return 0;}


1 0
原创粉丝点击