程式設計珠璣 第四章 編寫正確的程式

2021-08-26 21:44:11 字數 787 閱讀 1037

1、對下標限定界限:加條件 0<=l u<=n-1

2、這個函式可以寫成如下形式:

#include using namespace std;

int bs(int *a, int begin, int end, int v)

if ((e-a) < end && (*e == v))

return e-a;

return -1;

} int main()

; cout<

再給一段測試**

#include #include int cmp(const void *a, const void *b)

int bs(int *a, int begin, int end, int v)

if ((e-a) < end && (*e == v)) return e-a;

return -1;

}

int find(int *a, int begin, int end, int v)

int main(void)

return 0;

}

6、程式終止性證明:即每一步都至少會扔出乙個豆子,所以總會結束的。此外,白色的豆子要麼拿兩個,要麼不扔,所以白色的豆子如果是奇數,則會留下乙個白豆子,否則是黑豆子。

7、題目裡面如果要採用二分搜尋,那麼需要找的是乙個數的剛好下界。

採用題目2中的方法,可以找到剛好上界,由於,線段是順序排列的,所以就可以找剛好的下界了。

程式設計珠璣 第四章 編寫正確的程式

1 對下標限定界限 加條件 0 l u n 1 2 這個函式可以寫成如下形式 include using namespace std int bs int a,int begin,int end,int v if e a end e v return e a return 1 int main co...

程式設計珠璣 第四章 編寫正確的程式

1 對下標限定界限 加條件 0 l u n 1 2 這個函式可以寫成如下形式 include using namespace std int bs int a,int begin,int end,int v if e a end e v return e a return 1 int main co...

程式設計珠璣第四章

正文裡面涉及到程式設計方法學的內容。不再細述 1 加及條件是0 l u n 1 2 這個函式可以寫成如下形式 int bs int a,int begin,int end,int v if e a end e v return e a return 1 再給一段測試 include include ...