《程式設計珠璣》 學習歷程之二(三個問題之一)

2021-06-22 05:32:21 字數 908 閱讀 7707

給定乙個最多包含40

億個隨機排列的

32位整數的順序檔案,找出乙個不在檔案中的

32位整數(在檔案中至少缺少乙個這樣的數——為什麼?)。在具有足夠記憶體的情況下,如何解決該問題?如果有幾個外部的「臨時」檔案可用,但是僅有幾百位元組的記憶體,又該如何解決該問題?

無處不在的二分搜尋

如果我的整數字於1到n

之間,那麼你可以再

log(2)n

次之內猜中。

如果n是

1000,10

次就可以完成。

如果n是

100萬,則最多

20次就可以完成。

在程式設計中二分搜尋最常見的應用是在

有序陣列中搜尋元素。

如圖:查詢數字50

二分法c

**:

#include#includeint main()

int p=clock();

while(low<=high) }

int q=clock();

printf("%d\n",q-p);

return 0;

}

為了便於與普通的順序查詢演算法比較,特別加上順序查詢的c**:

#include#includeint main()

int p=clock();

for(int j=0;j<100000;j++)

int q=clock();

printf("%d\n",q-p);

return 0;

}

VB程式設計之二

1,visual的含義是視覺化 視窗的設計形式稱為窗體,我們把窗體 控制項等這些組成 使用者介面的部件稱為物件,與乙個物件的乙個事件相關聯的是乙個程式過程。2,vb在輸入程式 的同時將立即檢查並顯示錯誤,提示設計者進行修改 開發過程 中得到的部分成果也可以執行,以便於檢查修改 它是一種視覺化的 物件...

學習歷程之HTML(Css簡介)

概念 css技術是美化網頁的重要工具,乙個網頁的布局 美化都比較依賴css技術 選擇器由 選擇器名 一對大括號 和大括號裡面的屬性組成 css技術中比較重要的是四種選擇器的使用 1.標籤選擇器 既使用html的元素標籤作為選擇器的名,這種選擇器我們稱為標籤選擇器,如 a 等 作用 當編寫標籤選擇器後...

《JS高階程式設計》之二

1 js的基本資料型別有 number string number null undefined boolean 還有一種複雜資料型別object,function 和 array 是object的一種派生型別。2 typeof 用來判斷給定變數的資料型別,undefined 這個值未定義 bool...