数据结构-冒泡排序 C语言源码
数据结构-冒泡排序 C语言源码
基本思想:
每趟不断将记录两两比较,并按“前小后大” 规则交换。
3 6 4 2 11 10 5
1 3 4 2 6 10 5 11
2 3 2 4 6 5 10 11
3 2 3 4 5 6 10 11
4 2 3 4 5 6 10 11
5 2 3 4 5 6 10 11
6 2 3 4 5 6 10 11
#include<stdio.h>
#include<stdlib.h>
struct MP{
int*elem;
int length;
};
void ko(MP& l,int n)
{
int hj;
l.elem=(int*)malloc(sizeof(int)*n);
for(int k=0;k<n;k++)
{
scanf("%d",&hj);
l.elem[k]=hj;
}
l.length =n;
}
void xianshi(MP l)
{
for(int i=0;i<l.length ;i++)
{
printf(" %d ",l.elem[i]);
}
}
void pop(MP&l,int &bv,int &cv)
{
for(int i=0;i<l.length ;i++)
{
for(int j=i;j<=l.length -1;j++)
{
bv++;
if(l.elem[i]>=l.elem[j])
{
int bh=l.elem[j];
l.elem[j]=l.elem[i];
l.elem[i]=bh;
cv++;
}
xianshi(l);
printf("\n");
}
}
}
main()
{
int n;
printf("请输入表长");
scanf("%d",&n);
MP l;
printf("\n开始输入表中元素");
ko(l,n);
int bv=0;
int cv=0;
pop(l,bv,cv);
xianshi(l);
printf("\n比较次数为%d移动次数%d",bv,cv);
return 0;
}
快看,这才是重点!我想能看到这里的同学,无外乎两种人:来拷贝代码的人 和 来拷贝代码的人。
但,在拷贝走的时候,你要想清楚一件事,把代码拷走之后有个蛋用,搞明白对你来说才是最重要的。
好了,就酱紫。
老铁,这要是都不赞,说不过去吧!!!哦,对了,你这么好看,关注一下呗。。。
最后对自己说:
你现在所遭遇的每一个不幸,都来自一个不肯努力的曾经。