問答題

請寫一非遞歸算法,對于任意給定的k值,該算法在長度為 n、且元素按值嚴(yán)格遞增排列的順序表A[1..n]中采用折半查找法查找值不大于k的最大元素,若表中存在這樣的元素,則算法返回該元素在表中的位置,否則,算法返回信息0。(假設(shè)表中元素分別為一個正整數(shù)) 
例如,對于順序表A[1..10]=(2, 4, 6, 8, 10, 12, 14, 16, 18, 20), 
當(dāng)k=8時,滿足條件的元素為8,返回位置4; 
當(dāng)k=13時,滿足條件的元素為12,返回位置6; 
當(dāng)k=1時,無滿足條件的元素,返回信息0。


您可能感興趣的試卷

你可能感興趣的試題

8.單項選擇題下面給出的四種排序法中,排序過程中元素之間的比較次數(shù)與排序法無關(guān)的是()。

A.選擇排序法
B.插入排序法
C.快速排序法
D.堆積排序法

9.單項選擇題與直接插入排序法比較,折半插入排序法減少了排序過程中的()。

A.排序總的趟數(shù)
B.元素的移動次數(shù)
C.元素之間的比較次數(shù)
D.使用的輔助空間的數(shù)量

10.單項選擇題散列技術(shù)中的散列沖突是指()。

A.兩個元素具有相同的序號
B.兩個元素的鍵值不同,而其他屬性相同
C.元素過多
D.不同鍵值的元素對應(yīng)著相同的存儲地址