数字排序,写出你认为最快最简单的代码
本帖最后由 O_o 于 2010-6-23 08:40 编辑给一个多位数字,将这个数字拆散重新组合,然后得出一个最大数和最小数。
如:给出的是:2134
得出的min:1234 max:4321
就这样的,写出你认为最快最简单的代码。 排序算法~ 可惜我不会Delphi 回复 2# jonny_yue
随便什么语言都无所谓啦! 玩下呗! 沙发不知所谓 飘过 飘过 本帖最后由 jonny_yue 于 2010-6-23 09:28 编辑
#include <iostream>
using namespace std;
void main()
{
int a;
for (int i=0; i<10; i++)
{
a=0;
}
char ch=getchar();
while (ch != '\n')
{
a++; //这里郁闷了好久~~~~
ch=getchar();
}
cout<<"MIN=";
for (int i=0; i<10; i++)
{
for (int j=0; j<a; j++)
{
cout<<i;
}
}
cout<<" MAX=";
for (int i=9; i>-1; i--)
{
for (int j=0; j<a; j++)
{
cout<<i;
}
}
system("pause");
}
貌似我编的太麻烦 好久没编了 请教一个问题 char ch ; ch='5' ; 怎么直接使用5这个数值 回复 5# jonny_yue
我怎么编译有错误呢?
只有强制转换吧! 没人回复额,把我写的垃圾代码贴上来吧! 用了很多次强制转换蛮慢。
function Taxis(int: integer; MaxToMin: Boolean): Integer;
var
i , j : Integer;
s , x : String;
begin
s := IntToStr(int);
if MaxToMin then
begin
for i := 1 to Length(s) do
begin
for j := i +1 to Length(s) do
begin
if StrToInt(s) > StrToInt(s)then
begin
x := s;
s := s;
s := x;
end;
end;
end;
end
else
begin
for i := 1 to Length(s) do
begin
for j := i +1 to Length(s) do
begin
if StrToInt(s) < StrToInt(s)then
begin
x := s;
s := s;
s := x;
end;
end;
end;
end;
Result := StrToInt(s);
end;
快排一定快
页:
[1]