您的位置:首页 > 理论基础 > 数据结构算法

系列 - C数据结构实现 - 01

2011-10-12 14:33 239 查看



// 冒泡排序算法
void bubble_sort(int a[], int n){
 // 将a中的整数序列重新排列成自小至大有序的整数序列
 for (i = n - 1, change = TRUE, i > 1 && change; --i) {
  change = FALSE;
  for (j = 0; j < i; ++j)
  {
   if (a[j] > a[j + 1]) {
    a[j] <> a[j + 1];
    change = TRUE;
   }
  }
 }
}// end bubble_sort
// 线性表的动态分配顺序存储结构
#define LIST_INIT_SIZE 100 // 线性表存储空间的初始分配量
#define LISTINCREMENT 10 // 线性表存储空间的分配增量
typedef struct {
 ElemType * elem; // 存储空间基址
 int length; // 当前长度
 int listsize; // 当前分配的存储容量(以sizeof(ElemType)为单位)
}SqList;
// 构造线性表
Status InitList_Sq(SqList &L) {
 // 构造一个空的线性表L
 L.elem = (ElemType *)malloc(LIST_INIT_SIZE * sizeof(ElemType));
 if (!L.elem) exit(OVERFLOW); // 存储分配失败
 L.length = 0; // 空表长度为0
 L.listsize = LIST_INIT_SIZE; // 初始存储容量
 return OK;
}// InitList_Sq
// 插入一个元素
Status ListInsert_Sq(SqList &L, int i, ElemType e){
 if ()return ERROR;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息