查找、排序综合实验(3)
时间:2025-04-21
时间:2025-04-21
对记录序列(查找表):{55,13,23,72,109,67,2,78,13}分别实现如下操作:1)顺序查找;2)分别使用直接插入排序、冒泡排序、快速排序对原纪录序列进行排序(暂时人工排序);3)对排好序的纪录序列表进行折半查找;4)利用原纪录序列建立一颗二叉排序树,并在其上实现特定关键字值结点的查找;5)按照“除留余数法”哈希构造函数和线性探测再散列的冲突处理方法创建表长为m=11的哈希表
《
数据结构
》实验报告
-2-
int flag; }Elemtype; typedef struct { Elemtype *elem; int sizeindex; int count; }HashTable; typedef struct node { int key; struct node *lchild,*rchild; }bstnode,*bstree; typedef struct { int key; int next; }recordtype; typedef struct { keytype key[keysize]; int type; int next; }recordtype1; typedef struct { recordtype1 r[keysize +1]; int length; int keynum; }slinklist; typedef struct { recordtype r[listsize +1]; int length; }recordlist; typedef int pvector[radix]; //创建哈希表 int CreatHashTable(HashTable* H,int m) { int i,keys,p,len; H->elem = (Elemtype *)malloc( sizeof(Elemtype)); H->sizeindex = MAX;