{
try
{
Console.WriteLine("Input 10 integer(>0):");
string test = Console.ReadLine(); // 獲得輸入 可以輸入任意個數的整數
Console.WriteLine(StringHandler(test)); // 調用StringHandler處理該字符串 並排序
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
public static string StringHandler(string str)
{
string result = string.Empty;
List<int> intList = new List<int>();
if (!string.IsNullOrEmpty(str))
{
string[] strArray = str.Split(new char[] { ';', ';' ,' ',',',','}, StringSplitOptions.RemoveEmptyEntries); //將輸入的字符串分離
foreach (string num in strArray) // 存入壹個list
{
int temp = int.Parse(num);
if (!intList.Contains(temp))
{
intList.Add(temp);
}
}
//sort
Int32[] intArray = intList.ToArray() ; //將list轉化為int數組
SelectedSort(intArray); //調用排序算法
StringBuilder sb = new StringBuilder();
foreach (int i in intArray)
{
sb.Append(i.ToString() + ";"); //拼接輸出字符串
}
result = sb.ToString();
}
//選擇排序
public static void SelectedSort(int[] list)
{
int min;
for (int i = 0; i < list.Length - 1; i++)
{
min = i;
for (int j = i + 1; j < list.Length; j++)
{
if (list[j]<list[min])
min = j;
}
int t = list[min];
list[min] = list[i];
list[i] = t;
}
}
}