冒泡法对数组进行排序
2007-02-06 17:36
405 查看
//冒泡法算法
// 目的:按要求从大到小或从小到大排序。
//
// 基本思路:对尚未排序的各元素从头到尾依次依次比较相邻的两个元素是否逆序(与欲排顺序相反),
// 若逆序就交换这两元素,经过第一轮比较排序后便可把最大(或最小)的元素排好,然后再用同样的方法
// 把剩下的元素逐个进行比较,就得到了你所要的顺序。可以看出如果有N个元素,那么一共要进行n-1轮比较,
// 第I轮要进行j=n-i次比较。(如:有5个元素,则要进行5-1轮比较。第3轮则要进行5-3次比较)
int[] age=new int[5]{21,18,20,17,19};
int i,j,k;
Console.WriteLine("数组age的维数:{0}",age.Rank);//数组的维数
k=age.Length;
for( i=1;i<=k-1;i++)
{
for(j=0;j<k-i;j++)
{
if(age[j]>age[j+1])
{
int tmp;
tmp=age[j];
age[j]=age[j+1];
age[j+1]=tmp;
}
}
}
for(int m=0;m<age.Length;m++)
{
Console.WriteLine("{0}",age[m]);
}
// 目的:按要求从大到小或从小到大排序。
//
// 基本思路:对尚未排序的各元素从头到尾依次依次比较相邻的两个元素是否逆序(与欲排顺序相反),
// 若逆序就交换这两元素,经过第一轮比较排序后便可把最大(或最小)的元素排好,然后再用同样的方法
// 把剩下的元素逐个进行比较,就得到了你所要的顺序。可以看出如果有N个元素,那么一共要进行n-1轮比较,
// 第I轮要进行j=n-i次比较。(如:有5个元素,则要进行5-1轮比较。第3轮则要进行5-3次比较)
int[] age=new int[5]{21,18,20,17,19};
int i,j,k;
Console.WriteLine("数组age的维数:{0}",age.Rank);//数组的维数
k=age.Length;
for( i=1;i<=k-1;i++)
{
for(j=0;j<k-i;j++)
{
if(age[j]>age[j+1])
{
int tmp;
tmp=age[j];
age[j]=age[j+1];
age[j+1]=tmp;
}
}
}
for(int m=0;m<age.Length;m++)
{
Console.WriteLine("{0}",age[m]);
}
相关文章推荐
- 使用for循环对数组进行排序[冒泡法]
- 用冒泡法将10个整数进行由大到小排序(数组)
- C# 数组按照升序排列并输出(分别用冒泡法,选择法,插入法进行排序)。
- 冒泡法进行数组的排序
- [ActionScript 3.0] 对数组中的元素进行排序Array.sort()的方法
- C语言:用快速排序算法对一个数组进行排序
- Java中Arrays类进行数组排序
- 根据数组中的值进行排序并且返回指定的元素个数
- 借助数组进行数据的排序
- 工作问题小结——通过数组的某个属性进行排序
- 华为OJ——输入整型数组和排序标识,对其元素按照升序或降序进行排序
- Java中对一个数组中的数字进行排序
- js sort方法根据数组中对象的某一个属性值进行排序
- 华为OJ——输入整型数组和排序标识,对其元素按照升序或降序进行排序
- 对数组进行排序、求最大值和求元素和的算法都编写为函数模板,采用相关数据进行测试。
- 【php数组函数序列】之rsort() - 对数组的元素值进行降序排序
- Lesson_for_java_day07--java中数组的定义及常见排序方法--冒泡法、简单选择法、直接插入法和调用方法排序
- 有一串字符串a12hh123mm21m78 ,请将其中的数字提取出来存入数组,使用选择排序算法将其进行排序:
- c语言实现二维数组排序,一个4*5的数组,要求每行都进行升序排列,并求出每行的平均值。
- 利用集合进行数组的排序