把数组排成最小的数
2016-03-25 21:42
204 查看
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
#include <iostream> #include <algorithm> #include <sstream> #include <string> using namespace std; bool compare( const string &str1, const string &str2){ string s1 = str1 + str2; string s2 = str2 + str1; return s1 < s2; } void printminNum( int number[], int length){ if ( number == NULL || length <= 0) cout<<"error"<<endl; int i; string *strnum = new string [length]; for (i=0 ; i<length ; i++){ stringstream ss; ss << number[i]; ss >> strnum[i]; } sort( strnum, strnum+length , compare); for( i=0; i<length; i++){ cout << strnum[i] ; } cout << endl; } int main(){ cout << "请输入数组长度:"; int n = 0; cin >> n; cout << "请输入数组各值:"; int *array = new int ; int i = 0; for( i=0; i<n ;i++){ cin >> array[i]; } printminNum( array, n); delete [] array; return 0; }
相关文章推荐
- 关键字
- 软件测试学习(4)
- 【c语言】不用大与小与号,求两数最大值
- RDD弹性分布式数据集(一)
- 辛东方:人工智能究竟离我们还有多远?
- 新的开始
- Extjs grid 单元格溢出用……代替
- java毕向东听课笔记2(函数的重载)
- objc_msgSend(): Too many arguments to function call ,expected 0,have3
- leetcode_073 Set Matrix Zeros
- Docker隔绝上传文件
- Python介绍、环境搭建(Eclipse插件)、第一个程序
- 链表系列算法精选
- WPF学习——依赖项属性(2)
- 二、初学SpringMVC+Mybatis之Spring IOC
- Javascript
- 大数相加
- SHELL脚本监控JAVA进程的代码
- 观察观察观察
- SA模板