找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 280|回复: 1

把数组排成最小的数

[复制链接]

14

主题

65

回帖

0

积分

新手上路

积分
0
发表于 2013-7-1 23:01:32 | 显示全部楼层 |阅读模式
输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个。
接口说明:
int  smallestDigit(int a[],int nCount,char * strRst)
功能:将输入的数组排成最小的数
输入: int a[]:整型数组
           int nCount:数组长度
           char * strRst 返回值
输出:无
返回:成功返回0  异常返回-1

样例输入1:
2, 1
样例输出1:
12

样例输入2:
32, 321
样例输出2:
32132

样例输入3:
4589, 101,41425,9999
样例输出3:
1014142545899999

14

主题

65

回帖

0

积分

新手上路

积分
0
 楼主| 发表于 2013-7-5 20:30:58 | 显示全部楼层
参考思路:采用插入排序法,以样例输入2为例。
第1步:插入32;
第2步:插入321,32与321可以组成32122和32321,前者小,故将321插在32前面;
最小的数为32132。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

果子博客
扫码关注微信公众号

Archiver|手机版|小黑屋|风叶林

GMT+8, 2026-2-1 18:10 , Processed in 0.084328 second(s), 20 queries .

Powered by 风叶林

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表