最新關於演算法和資料結構的面試十六題

2021-05-28 11:11:52 字數 1249 閱讀 4918

五隻猴子分桃。半夜,第一只猴子先起來,它把桃分成了相等的五堆,多出乙隻。於是,它吃掉了乙個,拿走了一堆; 第二隻猴子起來一看,只有四堆桃。於是把四堆合在一起,分成相等的五堆,又多出乙個。於是,它也吃掉了乙個,拿走了一堆;......其他幾隻猴子也都是 這樣分的。問:這堆桃至少有多少個?(朋友說,這是小學奧數題)。

已知有個rand7()的函式,返回1到7隨機自然數,讓利用這個rand7()構造rand10() 隨機1~10。

如果兩個字串的字元一樣,但是順序不一樣,被認為是兄弟字串,問如何在迅速匹配兄弟字串(如,bad和adb就是兄弟字串)。

要求設計乙個dns的cache結構,要求能夠滿足每秒5000以上的查詢,滿足ip資料的快速插入,查詢的速度要快。

乙個未排序整數陣列,有正負數,重新排列使負數排在正數前面,並且要求不改變原來的 相對順序 比如: input: 1,7,-5,9,-12,15 ans: -5,-12,1,7,9,15 要求時間複雜度o(n),空間o(1) 。

**面試題:有乙個一億節點的樹,現在已知兩個點,找這兩個點的共同的祖先。

某伺服器流量統計器,每天有1000億的訪問記錄資料,包括時間、url、ip。設計系統實現記錄資料的

儲存、管理、查詢。要求能實現一下功能:

(1)計算在某一時間段(精確到分)時間內的,某url的所有訪問量。

(2)計算在某一時間段(精確到分)時間內的,某ip的所有訪問量。

假設某個**每天有超過10億次的頁面訪問量,出於安全考慮,**會記錄訪問客戶端訪問的ip位址和對應的時間,如果現在已經記錄了1000億條資料,想統計乙個指定時間段內的區域ip位址訪問量,那麼這些資料應該按照何種方式來組織,才能盡快滿足上面的統計需求呢,

設計完方案後,並指出該方案的優缺點,比如在什麼情況下,可能會非常慢?

給定乙個字串的集合,格式如:, ,,,要求將其中交集不為空的集合合併,要求合併完成後的集合之間無交集,例如上例應輸出,, 。

我們有很多瓶無色的液體,其中有一瓶是毒藥,其它都是蒸餾水,實驗的小白鼠喝了以後會在5分鐘後死亡,而喝到蒸餾水的小白鼠則一切正常。現在有5只小白鼠,請問一下,我們用這五隻小白鼠,5分鐘的時間,能夠檢測多少瓶液體的成分?

**2012筆試(研發類):

16、華為社招現場面試1:請使用**計算1234567891011121314151617181920*2019181716151413121110987654321 。

華為面試2:1分2分5分的硬幣,組成1角,共有多少種組合。

演算法和資料結構

演算法和資料結構 演算法和資料結構 千絲萬縷的聯絡 縱觀各種演算法書籍,大多都是將演算法和資料結構作為乙個整體來講述。資料結構就是陣列 樹結構等儲存或表現物件資料的結構。將演算法和資料結構作為整體講述,是因為必須依照演算法中的常用操作選擇資料結構。例如,事先將資料儲存在適當的樹形結構中,大多數情況下...

演算法和資料結構

演算法 資料結構與演算法的關係是相互依賴不可分割的。演算法的定義 演算法是解決特定問題求解步驟的描述,在計算機中為指令的有限序列,並且每條指令表示乙個或多個操作。演算法的特性 有窮性 確定性 可行性 輸入 輸出。演算法設計的要求 正確性 可讀性 健壯性 高效率和低儲存量需求。演算法特性與演算法設計容...

演算法和資料結構

好吧,在這裡,您被優秀或優秀的軟體開發人員所隔開。在這種情況下,我會告訴您,一開始或至少在我的情況下,我知道大多數時候,對於我認識的大多數人,您會覺得自己是乙個無能的人或白痴。基本上,我怎麼可能不理解這一點,然後您會感到沮喪。在這種情況下,我會告訴您情況並不像您想的那麼糟糕,您會告訴我 您知道,您甚...