C語言高效程式設計的四大祕技之數學方法解決問題
轉自:http://tech.163.com/06/1201/10/318HH45C00091KVA.html
第2招:數學方法解決問題
現在我們演繹高效C語言編寫的第二招——採用數學方法來解決問題。
數學是計算機之母,沒有數學的依據和基礎,就沒有計算機的發展,所以在編寫程式的時候,採用一些數學方法會對程式的執行效率有數量級的提高。
舉例如下,求 1~100的和。
方法E
int I , j;
for (I = 1 ;I<=100; I ++){
j += I;
}
方法F
int I;
I = (100 * (1+100)) / 2
這個例子是我印象最深的一個數學用例,是我的計算機啟蒙老師考我的。當時我只有小學三年級,可惜我當時不知道用公式 N×(N+1)/ 2 來解決這個問題。方法E迴圈了100次才解決問題,也就是說最少用了100個賦值,100個判斷,200個加法(I和j);而方法F僅僅用了1個加法,1 次乘法,1次除法。效果自然不言而喻。所以,現在我在程式設計序的時候,更多的是動腦筋找規律,最大限度地發揮數學的威力來提高程式執行的效率。
相關文章
- C語言高效程式設計的四大祕技之以空間換時間C語言程式設計
- C語言高效程式設計的四大祕技之使用位操作,減少除法和取模的運算C語言程式設計
- C語言解決排序問題C語言排序
- c語言程式設計題C語言程式設計
- C語言:一種高效、易學的程式語言C語言
- Python學習之函數語言程式設計Python函數程式設計
- Java技術分享之函數語言程式設計!Java函數程式設計
- Java技術分享之函數語言程式設計Java函數程式設計
- C++的函數語言程式設計C++函數程式設計
- C 語言程式設計利器之 CLion程式設計
- 從問題到程式 程式設計與C語言引論pdf程式設計C語言
- 程式設計師,不要急於學習程式語言,先學會如何解決問題程式設計師
- 偽隨機數C語言程式設計隨機C語言程式設計
- C語言程式設計題T1C語言程式設計
- 初步瞭解C語言Windows程式設計C語言Windows程式設計
- 解決visual studio2017 C語言程式的建立與執行問題C語言
- JavaScript函數語言程式設計之為什麼要函數語言程式設計(非嚴謹技術層面的扯淡)JavaScript函數程式設計
- C語言/C++程式設計學習:棧的程式碼實現之陣列方案C語言C++程式設計陣列
- 20201022-成信大-C語言程式設計-20201學期《C語言程式設計B》C-trainingExercises26C語言程式設計AI
- C語言程式設計之《資料輸出》C語言程式設計
- C語言 之 多執行緒程式設計C語言執行緒程式設計
- 大一C語言程式設計練習題C語言程式設計
- 函數語言程式設計之Promise的奇幻漂流函數程式設計Promise
- python函數語言程式設計詳解Python函數程式設計
- JavaScript函數語言程式設計學習JavaScript函數程式設計
- C#中的函數語言程式設計:序言(一)C#函數程式設計
- C語言入門基礎之陣列——數學和程式設計的完美結合(圖)C語言陣列程式設計
- 自學前端程式設計非技術性問題及解決辦法和學習方法總結前端程式設計
- JavaScript函數語言程式設計之副作用JavaScript函數程式設計
- Python爬蟲程式設計常見問題解決方法Python爬蟲程式設計
- C語言/C++對程式設計學習的重要性!C語言C++程式設計
- 程式語言設計,程式設計哲學程式設計
- 程式設計入門之學哪種程式語言?程式設計
- C語言程式設計-長整數加法運算C語言程式設計
- 函數語言程式設計函數程式設計
- JavaScript函數語言程式設計之pointfree與宣告式程式設計JavaScript函數程式設計
- 結對程式設計(c語言)程式設計C語言
- Scala 函數語言程式設計(一) 什麼是函數語言程式設計?函數程式設計