之前在CSDN上看到一个提问的,是将一个字符串 abcd as,ccd.dsa 排序后按照 dsa.ccd,as abcd 排列。不允许使用任何系统函数。如果按照以上结果,你不看下面的答案能行吗?
static void Main(string[] args)
{
string ss = "abcd as,ccd.dsa";
Stack<string> stack = new Stack<string>();
string ds = "";
for (int i = 0; i < ss.Length; i++)
{
if (ss[i] == ' ' || ss[i] == ',' || ss[i] == '.')
{
stack.Push(ds);
stack.Push(ss[i].ToString());
ds = "";
}
else
{
ds += ss[i].ToString();
if (i == ss.Length - 1 && ds != "")
{
stack.Push(ds);
}
}
}
ds = "";
foreach (string str in stack)
{
ds += str;
}
Console.WriteLine(ds);
Console.Read();
}