冒泡算法:每一次比较前后两个元素,若arr[j] > arr[j+1],则将arr[j+1]的值赋给arr[j],否则继续向后比较。每一趟排序,都会将最大的排在后面,每排序一次,下一次的比较次数就少一次。贴代码,记录下
C# 代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BubbleSort
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入n个整数,以‘,’分隔...");
string str = Console.ReadLine();
int[] arr = Array.ConvertAll<string, int>(str.Split(','), delegate(string c) { return int.Parse(c); });
BubbleSort(arr);
Console.WriteLine("排序后的数组:"+string.Join(",",arr));
Console.ReadLine();
}
/// <summary>
/// 冒泡
/// </summary>
/// <param name="arr"></param>
private static void BubbleSort(int[] arr)
{
int len = arr.Length;
int temp;
for (int i = 1; i < len; i++)
{
for (int j = 0; j < len - i; j++)
{
if (arr[j] > arr[j + 1])
{
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
}
}
Mark下