标签:
#include<iostream> using namespace std; #define MAX_SIZE 100//用于排序数组个数的最大值 typedef struct { int r[MAX_SIZE+1];//用于存储要排序的数组 int length;//用于记录顺序表的长度 }sqlist; //用于交换数组r中下标i和下标j的数组元素的值 void swap(sqlist* L, int i,int j) { int temp; temp=L->r[i]; L->r[i]=L->r[j]; L->r[j]=temp; } //冒泡排序(比较SB的) int maopaopaixu_SB(sqlist* L) { int len=L->length; for(int i=1;i!=len;++i) { for(int j=i+1;j!=len;++j) { if(L->r[i]>L->r[j]) swap(L,i,j); } } return 1; } //冒泡排序(正常) int maopaopaixu_zc(sqlist* L) { int len=L->length; for(int i=1;i!=len;++i) { for(int j=len;j!=i;j--) { if(L->r[j]<L->r[j-1]) swap(L,j,j-1); } } return 1; } //冒泡排序(优化) int maopaopaixu_yh(sqlist* L) { int len=L->length; int flag=0; for(int i=1;i!=len;++i) { flag=0; for(int j=len;j!=i;j--) { if(L->r[j]<L->r[j-1]) {swap(L,j,j-1);flag=1;} } if(flag==0) break; } return 1; } int main() { }
标签:
原文地址:http://www.cnblogs.com/yanliang12138/p/4432339.html