順序查詢以及二分查詢

2021-08-11 07:33:47 字數 933 閱讀 8770

#include

#include

#define list_init_size 100

#define listincrement 10

#define ok 1

#define error 0

#define overflow -2

#define eq(a,b) ((a)==(b))

#define lt(a,b) ((a)<(b))

#define lq(a,b) ((a)<=(b))

typedef int keytype;

typedef int status;

typedef structelemtype;

typedef structsstable;

status initlist_sq(sstable &st)

status creatlist(sstable &st)

}/*未改進的順序查詢

在順序表st中順序查詢其關鍵字等於key的資料元素,

若找到,則返回它在表中的位置,否則返回 0

*/int search_seq(sstable st,keytype key)

/*改進的順序查詢

在順序表st中順序查詢其關鍵字等於key的資料元素,

若找到,則返回它在表中的位置,否則返回 0。

*/int gsearch_seq(sstable st,keytype key)

/*折半查詢

在有序表st中折半查詢其關鍵字等於key的資料元素。

若找到,則函式值為該元素在表中的位置,否則為0。

*/int search_bin(sstable st,keytype key)

return

0;// 順序表中不存在待查元素

}int main()

順序查詢 二分查詢

順序查詢 適用範圍 沒有進行排序的資料序列 缺點 速度非常慢,效率為o n cpp view plain copy 在code上檢視 片派生到我的 片 實現 template type sequencesearch type begin,type end,const type searchvalue...

順序查詢 二分查詢 索引查詢

1.查詢技術的分類。如下圖 2.什麼是順序查詢呢?無序表 順序查詢的原理很簡單,就是遍歷整個列表,逐個進行記錄的關鍵字與給定值比較,若某個記錄的關鍵字和給定值相等,則查詢成功,找到所查的記錄。如果直到最後乙個記錄,其關鍵字和給定值比較都不等時,則表中沒有所查的記錄,查詢失敗。時間複雜度是o n 3....

順序查詢與二分查詢

先上 include void printarr int a,int n void bublesort int a,int n void swap int a,int b int binarysearch int a,int n,int k int normalsearch int a,int n,...