您的位置:首页 > 其它

冒泡排序——算法

2016-07-05 19:39 330 查看
计算机经典算法 ——冒泡排序(降序排序)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SortTest
{
class Program
{
/*
* 降序排列
*/
static void Sort(int[] iNum)
{
for (int i = 0; i < iNum.Length;i++ )
{
for (int j=i+1;j<iNum.Length;j++)
{
int temp =0;
if (iNum[i]<iNum[j])
{
temp = iNum[i];
iNum[i] = iNum[j];
iNum[j] = temp;
}
}
}
}
static void PrintNumber(int[] iNums)
{
Console.Write("数组的顺序: ");
foreach (var iNum in iNums)
{
Console.Write(iNum+ " ");
}
Console.WriteLine();
}
static void Main(string[] args)
{
int[] iNumber = { 9, 6, 7, 8};
PrintNumber(iNumber);
Sort(iNumber);
PrintNumber(iNumber);
Console.ReadKey();
}
}
}


2.冒泡排序(升序排序)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AscendingSort
{
class Program
{
/************************************************************************/
/* 升序排列                                                             */
/************************************************************************/
static void AscSort(int[] iNum)
{
for (int i = 0; i < iNum.Length;i++ )
{
for (int j = iNum.Length - 1; j > i; j--)
{
if (iNum[i]>iNum[j])
{
int temp = 0;
temp = iNum[i];
iNum[i] = iNum[j];
iNum[j] = temp;
}
}
}
}
static void PrintNumber(int[] iNums)
{
Console.Write("数组的顺序: ");
foreach (var iNum in iNums)
{
Console.Write(iNum + " ");
}
Console.WriteLine();
}
static void Main(string[] args)
{
int[] iNumber = { 9, 6, 7, 8 };
PrintNumber(iNumber);
AscSort(iNumber);
PrintNumber(iNumber);
Console.ReadKey();
}
}
}


另一种升序排序写法

/// <summary>
/// 升序排列
/// </summary>
/// <param name="iNum"></param>
static void Bubble(int[] iNum)
{
int temp = 0;
for (int i = iNum.Length; i > 0; i--)
{
for (int j = 0; j < i - 1; j++)
{
if (iNum[j] > iNum[j + 1])
{
temp = iNum[j];
iNum[j] = iNum[j + 1];
iNum[j + 1] = temp;
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: