書名: 算法通關之路作者名: 路志鵬 俞俊 海凡路 黃樂興 李冰本章字數: 651字更新時間: 2021-10-15 18:32:01
總結
本章先從n數和開始,從最簡單的兩數和,到三數和、四數和,再到最后的最接近的三數和,通過多種方法多個角度來解決問題,相信之后你碰到類似的題目,也能夠采取類似的方法,打開思路。
最大子序列和是一個經典的動態規劃問題,很多人的第一反應就是動態規劃,這本身并沒有問題,但是從數學角度來看,也可以轉化為前綴和問題,這何嘗不是一種從數學角度的降維打擊。
如果說前面的6道題不是真正的數學題,那么后面的4道題可以算是真正的數學題了,需要有點數學基礎知識才能解決,但是其涉及的數學知識又非常簡單,甚至題目已經對部分內容進行了解釋,以至于即使你之前對相關知識點并不了解,也不影響你解決問題。
除本章列舉的10道題之外,還有很多經典題目。由于篇幅有限,不方便在這里進行展開講解。下面我列舉了幾個有代表性的題目,讀者可以結合本章學習的內容進行針對性練習。
● 面試題17.01.不用加號的加法(見參考鏈接/正文[2])。
● 第29題兩數相除(見參考鏈接/正文[3])。
● 第43題字符串相乘(見參考鏈接/正文[4])。
● 第69題x的平方根(見參考鏈接/正文[5])。
● 第50題Pow(x,n)(見參考鏈接/正文[6])。
● 第204題計數質數(見參考鏈接/正文[7])。
● 丑數系列
另外,我列舉一下力扣(LeetCode)中常見的數學知識點。
● 質數:質數的概念、性質及質數篩選法。
● 實現加/減/乘/除、平方、次方及開根號。
● 矩陣運算、矩陣的基本性質、矩陣的旋轉等。
● 最大公約數:如何計算兩個數的最大公約數,最大公約數的性質。
● 排列組合:排列組合的概念及計算。
如果讀者對上面的知識點比較陌生,建議有針對性地學習加強。