您的位置:首页 > 其它

(积累系列—算法)冒泡算法

2008-02-21 12:51 155 查看
冒泡算法,都忘了怎么写了,只写出来一个最差最差的两层循环 。。。今天在网上查了查资料,写成了程序

[align=left]using System;[/align]
[align=left]using System.Collections.Generic;[/align]
[align=left]using System.Text;[/align]
[align=left] [/align]
[align=left]namespace Algorithm_Demonstrate[/align]
[align=left]{[/align]
[align=left] class Program[/align]
[align=left] {[/align]
[align=left] static void Main(string[] args)[/align]
[align=left] {[/align]
[align=left] int[] a = new int[] {9,8,7,6,5,4,3,2,1,0 };[/align]
[align=left] for (int i = 0; i < a.Length; i++)[/align]
[align=left] {[/align]
[align=left] Console.WriteLine(a[i]);[/align]
[align=left] }[/align]
[align=left] Bubblesort objbullsort = new Bubblesort();[/align]
[align=left] int sorttime=objbullsort.BubblesortMethod(a);[/align]
[align=left] for( int i=0;i<a.Length;i++)[/align]
[align=left] {[/align]
[align=left] Console.WriteLine(a[i]);[/align]
[align=left] }[/align]
[align=left] Console.WriteLine("sort time is :" + sorttime);[/align]
[align=left] Console.ReadLine();[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] [/align]
[align=left] class Bubblesort[/align]
[align=left] {[/align]
[align=left] public int BubblesortMethod(int[] ary)[/align]
[align=left] {//ary is the arry to storage the DATA needed to sort [/align]
[align=left] bool ischange;[/align]
[align=left] int time = 0;[/align]
[align=left] for (int i = 0; i < ary.Length; i++)[/align]
[align=left] {[/align]
[align=left] ischange = false;[/align]
[align=left] for (int j = ary.Length - 1; j > i; j--)[/align]
[align=left] {[/align]
[align=left] if (ary[j] <= ary[j - 1])[/align]
[align=left] Swap(ref ary[j], ref ary[j - 1]);[/align]
[align=left] time++;[/align]
[align=left] ischange = true;[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left] if (!ischange)[/align]
[align=left] return time;[/align]
[align=left] }[/align]
[align=left] return time;[/align]
[align=left] [/align]
[align=left] }[/align]
[align=left] [/align]
[align=left] void Swap(ref int a, ref int b)[/align]
[align=left] {[/align]
[align=left] a = a ^ b;[/align]
[align=left] b = b ^ a;[/align]
[align=left] a = a ^ b;[/align]
[align=left] }[/align]
[align=left] }[/align]
[align=left]}[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: