原创 分治算法求子數組的最大和

求最大子數組和也是一個非常經典的題目。此題目在leetcode,《編程之美》,《算法導論》,《編程珠璣》中都提到了,這是一個能顯著體現出算法設計重要性的題目。通過不斷地優化算法設計,該題目能夠不斷以更好更快的時間被解決。先看一下題目描述:

原创 編程珠璣——取樣總結

取樣問題 問題描述:程序的輸入包含兩個整數m和n,其中m小於n。輸出是0~n-1範圍內的m個隨機整數,要求:每個數選擇出現的概率相等,且按序輸出。 問題中最重要的要求是概率相同。假設m=2,n=5,那麼每個數都應該以2/5的概率被選中,直

原创 Leetcode題目整理

Leetcode題目整理 最近一直在整理之前刷的leetcode的題目,考慮了好久用什麼整理,最終選擇了gitBook…(當然支持中文不太好),整理的網上鍊接在這裏: Leetcode題目 題目是按照leetcode上的分類來分類的,

原创 牛頓迭代法實現平方根函數

牛頓迭代法實現平方根函數 平方根函數Sqrt() 用來求一個數的平方根,如何實現這個函數?有多種方法,這裏記錄一種比較常用的牛頓迭代法。 牛頓迭代法 牛頓迭代法(Newton·s method)又稱爲牛頓-拉夫遜(拉弗森)方法(New

原创 C++的重寫和隱藏

C++的重寫是指派生類重新定義基類的虛函數;隱藏通常是指的子類隱藏父類的方法,面試中遇到了類似兩者結合的問題,特此整理下縷縷思路。 背景 父類如下: class Tfather { public: Tfather(void);

原创 Linux讀取PCI設備的信息

讀取PCI信息 最近想要在linux系統下用代碼讀取PCI的設備信息,查看了以下網上的代碼,稍微修改就可以了,現在貼出來以備以後使用。當然想要查看PCI的其他信息也只要在此基礎繼續修改讀取更多的PCI信息就行。 #include<stdi

原创 Cache——緩存數據結構實現

Cache——緩存 緩存是臨時存放數據的區域,緩存的運行速度比內存快得多,設計好一個緩存結構能夠幫助我們更快地運行程序。 進來在阿里面試的時候也遇到設計一個緩存的問題,同時leetcode和Hihocoder上都出現了設計緩存的問題,因