問(wèn)答題
在順序線性表中存放n個(gè)整數(shù),n的值由用戶輸入確定,線性表可以是有序表或無(wú)序表。比較各查找算法在不同情況下的時(shí)間性能。 各查找算法的實(shí)測(cè)時(shí)間性能包括兩個(gè)指標(biāo):算法執(zhí)行的絕對(duì)時(shí)間和關(guān)鍵字的平均比較次數(shù)。 各查找算法要求評(píng)測(cè)查找成功與不成功的兩種情形。 為了能比較出各種查找算法執(zhí)行的絕對(duì)時(shí)間,需要對(duì)表中的數(shù)據(jù)進(jìn)行較大量的查找,設(shè)為m次,m的值也由用戶輸入確定。當(dāng)輸入m為1000000時(shí),則對(duì)線性表作1000000次查找。 (1)比較在有序表和無(wú)序表中進(jìn)行順序查找時(shí),查找成功和查找失敗時(shí)的算法執(zhí)行的絕對(duì)時(shí)間和關(guān)鍵字的平均比較次數(shù)。 (2)比較在同一有序表中進(jìn)行順序查找和二分查找時(shí)的時(shí)間性能。 (3)比較在同一有序表中進(jìn)行非遞歸二分查找和遞歸二分查找的時(shí)間性能。
答案:
為了比較不同查找算法的時(shí)間性能,我們需要編寫或使用現(xiàn)有的查找算法,并在相同的條件下運(yùn)行它們。以下是針對(duì)上述要求的分析和比...