01-複雜度3 二分查詢 (20 分)
本題要求實現二分查詢演算法。
函式介面定義:
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
1231
5589
10131
輸出樣例
2
輸入樣例
5
1231
5589
10131
輸出樣例
0
答案:
position binarysearch
( list l, elementtype x )
else
if(l->data[index]
else
}return notfound;
}
PTA 01 複雜度3 二分查詢
題目描述 本題要求實現二分查詢演算法。函式介面定義 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 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是使...