using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 冒泡排序拓展
{
class Program
{
/// <summary>
/// 冒泡排序方法一
/// 通过标识符swapped来判断数组是否已经有序,若是有序的,不再进行后续的循环,直接输出结果
/// </summary>
/// <param name="sortArray"></param>
static void Sort(int[] sortArray)
{
bool swapped = true;
do
{
swapped = false;
for (int i = 0; i < sortArray.Length-1; i++)
{
if (sortArray[i]>sortArray[i+1])
{
int temp = sortArray[i];
sortArray[i] = sortArray[i + 1];
sortArray[i + 1] = temp;
// 当有数据发生过位置交换,则说明该数组目前不是有序的
// 则swapped表示赋值为true进入下一次循环
swapped = true;
}
}
} while (swapped);
}
static void Main(string[] args)
{
int[] sortArray = new int[] { 123, 12, 1321, 2323, 135, 4, 6541, 123, 156, };
Sort(sortArray);
foreach (var item in sortArray)
{
Console.Write(item+" ");
}
Console.ReadKey();
}
}
}