重要:下文所有代碼均可在 https://gitee.com/ecloudstudio/codes/160punhvq8c52tz3srejd11 獲取。
1.尋找數組的中心索引
題目:
思路:
傳統的思路是逐個遍歷元素,獲取其左側和右側的元素之和比較。但這樣每次都需要進行幾乎全部元素的求和,效率比較低。所以可以先一次性求和,然后每次往后移動一個位置,就更新一次左右元素的和,只需要一次加法和一次減法,比起重新求和要快得多。
代碼:
2.搜索插入位置
題目
思路
傳統思路應當是直接遍歷了。不過當數據量很大的時候,直接遍歷效率感人。這時候當然要用經典的二分算法了。不過二分算法需要嚴格控制邊界條件,不要漏掉元素或者越界。
代碼
3.最長公共前綴
題目
思路
以某一個字符串為基准,每次讀取一個字符作為參照,然后和其他字符串上對應位置的字符做對比……沒有任何花樣的基本算法。
代碼
總的心得:不難,但是要用點心。是一個比較好的強化計算算法思維的機會。