asp.Netバブルアルゴリズムの理解
2014 ワード
/* ? ? ?
* , ?
* , , ......
* */
using System;
namespace Sort
{
public class Sort
{
//
// ? , ,
public void BubbleSort(int[] a)
{
// , , C ?
int tmp;
for (int i = 0; i < a.Length - 1; i++)
{
int idx = i; // ?
for (int j = idx + 1; j < a.Length; j++)
if (a[idx] < a[j])
idx = j; //
//
tmp = a[i];
a[i] = a[idx];
a[idx] = tmp;
}
}
//
// ,
public void BubbleSort(int[] a)
{
// , , C ?
int tmp;
for (int i = 0; i < a.Length - 1; i++)
{
//int idx = i; ?
// ?
for (int j = i+1; j < a.Length; j++)
{
// , , , ?
if (a[i] < a[j])
{
tmp = a[j];
a[j] = a[i];
a[i] = tmp;
}
}
}
}
// ,
// ,
public void BubbleSort(int[] a)
{
//
bubble(a, 0, a.Length);
}
void bubble(int[] a, int start, int end)
{
// :
if (start >= end)
{
return;
}
int tmp;
//
for (int i = start; i < end-1; i++)
{
if (a[start] < a[i + 1])
{
tmp = a[start];
a[start] = a[i + 1];
a[i + 1] = tmp;
}
}
//
bubble(a, start+1, end);
}
}
}