兩個程式塊在不同情況下哪個更快

2021-06-06 14:12:54 字數 1042 閱讀 8634

有兩個相同功能**如下,請在在a,

b,c是什麼的情況下,請給出三個原因

case 1

比case 2

快,還有三個原因

case 2

會比case 1

要執行的快。(不考慮編譯器優化)

case1:

for(i=0;i

case2:

for(i=0;i

for(i=0;i

for(i=0;i

case1比case2快:

1.a b c共用乙個公共資源,在一起加鎖解鎖一次即可;分開則要三次;

2.a b c同時利用乙個io裝置,在一起開啟關閉一次即可;分開則要三次;

3.a b c訪問同乙個遠端資料庫進行操作,一起則開啟關閉一次連線介面;分開則三次;

4.a b c都是空白**,什麼都不做,這樣在一起相當於執行一次迴圈,分開則三次;

5.a b c都是減少n的操作,則case1表較快;或者都是增加i的操作也同樣;

6.a b c中至少含有乙個break,或者return也一樣;則case1肯定快;

case2比case1快:

1.  a b c分別有三個不同的鎖,case1需要同時滿足才能執行;case2則分別滿足即可;

2.  a b c都是讀磁碟操作,分別讀三個不同位置的連續磁碟塊

3.  a b c都把n加了0.5,則case1就是死迴圈了,或者把i減少0.5也是同樣;case2肯定快

有乙個開玩笑的就是不在同乙個配置的機器上執行,哈哈~

閥門在不同情況的洩露

砂眼洩露 1.鑄造缺陷,有氣孔 夾渣 鬆散組織等。嚴格遵守工藝和操作紀律,按時按量按質新增抗老化劑。有完整的質量保證體系,出廠產品符合質量標準 2.鍛造缺陷,有夾渣 摺疊等。根據工況條件選用閥門,注重壓力 溫度 介質相互間約制關係,留有一定餘地 3.注塑缺陷,有氣孔 夾渣 冷隔 缺肉等。根據塑料 橡...

遞迴函式在不同情況的用法

根據近幾天除錯乙個 的經驗,發現遞迴函式可分為以下兩類 1.遍歷型 2.指定結束型 遍歷型的乙個代表是遍歷樹,它是訪問到所有結點 指定結束型的乙個代表是求解斐波那契,它是到達乙個指定條件後層層退出。對於指定結束型,必須在分支前 如for迴圈次數就是分支次數 加上判斷是否達到指定結束條件的語句,否則,...

C 類模板在不同情況下的使用

4.類模板派生普通類 5.類模板派生類模板 6.類模板類內實現 7.類模板類外實現 8.模板類碰到友元函式 類模板和函式模板的定義和使用類似。有時,有兩個或多個類,其功能是相同的,僅僅是資料型別不同。類模板可以有預設引數,比如 template typename nametype,typename ...