一、查詢的分類:
1、靜態查詢:不進行插入和刪除操作。
2、動態查詢:可進行插入和刪除操作。
按查詢的基本方法可分為:比較查詢法和計算查詢法。
按元素的組織結構可分為:基於線性表的查詢和基於樹的查詢。
二、順序查詢(基於線性表)
1、陣列順序儲存(靜態、比較查詢)
#include
#define list_size 20
int a[list_size]=;
//順序儲存
main()
}if(n!=-1
)printf
("%d"
,n);
else
printf
("not found!");
}
2、結構體順序儲存(靜態、比較查詢)
#include
#define list_size 20
typedef
struct
recode;
void
main()
,,,,
,,,,
,,,,
,,,,
,,,}
;int k,i=0;
printf
("please enter what you are looking for:");
scanf
("%d"
,&k)
;while
(i<=list_size-
1&&stu1[i]
.r!=k )
if(i<=list_size-1)
printf
("%d"
,i+1);
else
printf
("not found!");
}
三、折半查詢(靜態、比較查詢)
將low初始化為0,而high初始化為maxsieze+1,使之與陣列儲存結構相匹配,即下標從0開始,避免第乙個元素查詢不到的問題。
#include
#define maxsize 20
intbinsrch
(int a,
int k)
return0;
}void
main()
;int n,k;
printf
("please enter what you are looking for:");
scanf
("%d"
,&k)
; n=
binsrch
(a,k);if
(n)printf
("%d"
,n);
else
printf
("not found!");
}
C語言實現查詢whois
define crt secure no warnings include include include include int main else pclose fp sleep 1000 return 0 儲存還未占用的網域名稱 亂碼是由於cmd預設是gbk編碼方式。修改方法 在中文windo...
資料結構與演算法(六)查詢 c語言實現
靜態查詢表 include include include define max 20 typedef struct elemtype typedef struct stable stable initlist int n for int i 0 i n i st length n return s...
資料結構(c語言實現) 二分查詢演算法
l是使用者傳入的乙個線性表。函式binarysearch要查詢x在data中的位置,即陣列下標 注意 元素從下標1開始儲存 找到則返回下標,否則返回乙個特殊的失敗標記notfound。以下解答僅供參考 二分查詢也稱折半查詢 binary search 它是一種效率較高的查詢方法。但是,折半查詢要求線...