資料結構 查詢演算法 用c語言實現查詢演算法《一》)

2021-10-01 14:19:06 字數 1458 閱讀 3803

一、查詢的分類:

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 它是一種效率較高的查詢方法。但是,折半查詢要求線...