冒泡法,改进冒泡法排序和反序算法
来源:互联网 发布:手机淘宝退款率 编辑:程序博客网 时间:2024/05/16 06:00
#include <stdio.h>
int sort_bubble(int arr[],int len);
int sort_bubblemod(int arr[],int len);
int reverse_half(int arr[],int len);
void main()
{
//int num[10]={3,8,9,2,5,7,6,0,4,1};
int num[10]={0,1,2,3,4,5,6,7,8,9};
for (int i=0;i<10;i++)
{
printf("%d/t",num[i]);
}
int cnt;
//cnt=sort_bubble(num,10);
//cnt=sort_bubblemod(num,10);
cnt=reverse_half(num,9);
printf("交换次数:%d/n",cnt);
for (i=0;i<10;i++)
{
printf("%d/t",num[i]);
}
//printf("Hello World");
char a;
scanf(&a);
}
int sort_bubble(int arr[],int len)
{
int cnt=0;
for(int i=0;i<len-1;i++)
{
for(int j=i+1;j<len;j++)
{
int tmp;
if(arr[j]>arr[i])
{
tmp=arr[j];
arr[j]=arr[i];
arr[i]=tmp;
cnt++;
}
}
}
return cnt;
}
int sort_bubblemod(int arr[],int len)
{
int cnt=0;
int tmp;
for(int i=0;i<len-1;i++)
{
int k=i;
for (int j=i+1;j<len;j++)
{
if(arr[j]>arr[k])
{
k=j;
}
}
if(k!=i)
{
tmp=arr[i];
arr[i]=arr[k];
arr[k]=tmp;
cnt++;
}
}
return cnt;
}
int reverse_half(int arr[],int len)
{
int cnt=0;
int tmp;
for(int i=0;i<len/2;i++)
{
tmp=arr[i];
arr[i]=arr[len-i-1];
arr[len-i-1]=tmp;
cnt++;
}
return cnt;
}
- 冒泡法,改进冒泡法排序和反序算法
- 冒泡排序改进算法
- 冒泡排序和改进
- 冒泡排序法的改进
- 冒泡法排序改进版
- 排序 - 冒泡法(改进)
- 快速排序-冒泡法改进
- 排序算法1.插入排序 2.冒泡排序 3.改进的冒泡法 4.归并排序
- C语言之排序算法-冒泡法的改进
- 冒泡排序的改进算法
- 改进的冒泡排序算法
- 冒泡排序及其改进算法
- 改进的冒泡排序算法
- 改进的冒泡排序算法
- 改进的冒泡排序算法
- 冒泡排序算法的改进
- 冒泡排序算法以及改进
- 冒泡排序及其改进算法
- 关于CMainFrame的鼠标响应
- [转]window xp IIS的配置(2)
- STL概述
- zoj 1975
- 英语不好,能学编程吗
- 冒泡法,改进冒泡法排序和反序算法
- 多路复用与设置阻塞、非阻塞模式
- Hibernate之简单过源码
- POJ 2002 hash(枚举+哈希) 或者 枚举+二分
- DSplay库 例程(二)简单捕获视频和音频并进行预览
- Ubuntu下自动挂载windows分区磁盘的方法
- 数据库常用语句面试题型
- Java常见知识
- Windows Via C/C++: The CreateProcess function