01 複雜度3 二分查詢 20分

2021-10-23 19:01:01 字數 1233 閱讀 2976

函式介面定義:

position binarysearch( list l, elementtype x );

其中list結構定義如下:

typedef int position;

typedef struct lnode list;

struct lnode ;

l是使用者傳入的乙個線性表,其中elementtype元素可以通過》、==、《進行比較,並且題目保證傳入的資料是遞增有序的。函式binarysearch要查詢x在data中的位置,即陣列下標(注意:元素從下標1開始儲存)。找到則返回下標,否則返回乙個特殊的失敗標記notfound。

裁判測試程式樣例:

#include

#include

#define maxsize 10

#define notfound 0

typedef

int elementtype;

typedef

int position;

typedef

struct lnode *list;

struct lnode

;list readinput()

;/* 裁判實現,細節不表。元素從下標1開始儲存 */

position binarysearch

( list l, elementtype x )

;int

main()

/* 你的**將被嵌在這裡 */

5

12 31 55 89 101

31

3

26 78 233

31

position binarysearch

( list l, elementtype x )

else

if(x < l->data[i]

)else

}return notfound;

}

list readinput()

l->last = i-1;

return l;

}

01 複雜度3 二分查詢 (20 分

本題要求實現二分查詢演算法。position binarysearch list l,elementtype x 其中list結構定義如下 typedef int position typedef struct lnode list struct lnode l是使用者傳入的乙個線性表,其中elem...

01 複雜度3 二分查詢 20分

01 複雜度3 二分查詢 20分 本題要求實現二分查詢演算法。position binarysearch list l,elementtype x 其中list結構定義如下 typedef int position typedef struct lnode list struct lnode l是使...

01 複雜度3 二分查詢(20 分)

函式介面定義 position binarysearch list l,elementtype x 其中list結構定義如下 typedef struct lnode list struct lnode l是使用者傳入的乙個線性表,其中elementtype元素可以通過 進行比較,並且題目保證傳入的...