91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

云計算面試題知識匯總,云計算面試經驗講解

發布時間:2020-08-10 13:39:52 來源:ITPUB博客 閱讀:208 作者:千鋒云計算 欄目:云計算

云計算崗位面試其實并沒有很多人想的那么復雜,主要是電話面試,估計是面試的人比較少,簡單的問了一些技術問題,在問了有一些商務對接方面的問題第一輪,技術面的時候,問了云計算的3個層面,云計算現在發展情況,商務面的時候,問了商務對接如何有效進行;第二輪,主要問做過什么項目,如何做項目,下面給大家分享幾個實用的云計算面試題知識。

云計算面試題知識匯總,云計算面試經驗講解

1、海量日志數據,提取出某日訪問百度次數最多的那個IP。

IP是32位的,最多有個2^32個IP。同樣可以采用映射的方法,比如模1000,把整個大文件映射為1000個小文件,再找出每個小文中出現頻率最大的IP(可以采用hash_map進行頻率統計,然后再找出頻率最大的幾個)及相應的頻率。然后再在這1000個最大的IP中,找出那個頻率最大的IP,即為所求。

2、搜索引擎會通過日志文件把用戶每次檢索使用的所有檢索串都記錄下來,每個查詢串的長度為1-255字節。

假設目前有一千萬個記錄(這些查詢串的重復度比較高,雖然總數是1千萬,但如果除去重復后,不超過3百萬個。一個查詢串的重復度越高,說明查詢它的用戶越多,也就是越熱門。),請你統計最熱門的10個查詢串,要求使用的內存不能超過1G。

第一步借用hash統計進行預處理: 先對這批海量數據預處理(維護一個Key為Query字串,Value為該Query出現次數,即Hashmap(Query,Value),每次讀取一個Query,如果該字串不在Table中,那么加入該字串,并且將Value值設為1;如果該字串在Table中,那么將該字串的計數加一即可。最終我們在O(N)(N為1千萬,因為要遍歷整個數組一遍才能統計處每個query出現的次數)的時間復雜度內用Hash表完成了統計;

第二步借用堆排序找出最熱門的10個查詢串:時間復雜度為N'*logK。維護一個K(該題目中是10)大小的小根堆,然后遍歷3百萬個Query,分別和根元素進行對比(對比value的值),找出10個value值最大的query

最終的時間復雜度是:O(N) + N'*O(logK),(N為1000萬,N’為300萬)

或者:采用trie樹,關鍵字域存該查詢串出現的次數,沒有出現為0。最后用10個元素的最小推來對出現頻率進行排序。

云計算面試題知識匯總,云計算面試經驗講解

3、有一個1G大小的一個文件,里面每一行是一個詞,詞的大小不超過16字節,內存限制大小是1M。返回頻數最高的100個詞。

第一步分而治之/hash映射到順序讀文件中,對于每個詞x,取hash(x)%5000,然后按照該值存到5000個小文件(記為x0,x1,...x4999)中。這樣每個文件大概是200k左右。如果其中的有的文件超過了1M大小,還可以按照類似的方法繼續往下分,直到分解得到的小文件的大小都不超過1M。 

第二步hash統計對每個小文件,統計每個文件中出現的詞以及相應的頻率(可以采用trie樹/hash_map等),并取出出現頻率最大的100個詞(可以用含100個結點的最小堆),并把100個詞及相應的頻率存入文件,這樣又得到了5000個文件。

第三步堆/歸并排序就是把這5000個文件進行歸并(也可以采用堆排序)的過程了。(如果內存允許可以將這5000個文件中的所有元素合并起來,利用堆獲得top 100)

4、 給定a、b兩個文件,各存放50億個url,每個url各占64字節,內存限制是4G,讓你找出a、b文件共同的url?

可以估計每個文件安的大小為5G×64=320G,遠遠大于內存限制的4G。所以不可能將其完全加載到內存中處理。考慮采取分而治之的方法。

遍歷文件a,對每個url求取hash(url)%1000,然后根據所取得的值將url分別存儲到1000個小文件(記為a0,a1,...,a999)中。這樣每個小文件的大約為300M。

遍歷文件b,采取和a相同的方式將url分別存儲到1000小文件(記為b0,b1,...,b999)。這樣處理后,所有可能相同的url都在對應的小文件(a0vsb0,a1vsb1,...,a999vsb999)中,不對應的小文件不可能有相同的url。然后我們只要求出1000對小文件中相同的url即可。

求每對小文件中相同的url時,可以把其中一個小文件的url存儲到hash_set中。然后遍歷另一個小文件的每個url,看其是否在剛才構建的hash_set中,如果是,那么就是共同的url,存到文件里面就可以了。

云計算面試題知識匯總,云計算面試經驗講解

5.  騰訊面試題:給40億個不重復的unsigned int的整數,沒排過序的,然后再給一個數,如何快速判斷這個數是否在那40億個數當中?

方案1:申請512M的內存(2^32/8=512MB),一個bit位代表一個unsigned int值。讀入40億個數,設置相應的bit位,讀入要查詢的數,查看相應bit位是否為1,為1表示存在,為0表示不存在。

方案2:因為2^32為40億多,所以給定一個數可能在,也可能不在其中;這里我們把40億個數中的每一個用32位的二進制來表示假設這40億個數開始放在一個文件中。

然后將這40億個數分成兩類:  1. 最高位為0  2. 最高位為1 

并將這兩類分別寫入到兩個文件中,其中一個文件中數的個數<=20億,而另一個>=20億(這相當于折半了);與要查找的數的最高位比較并接著進入相應的文件再查找

再然后把這個文件為又分成兩類: 1.次最高位為0 2.次最高位為1

并將這兩類分別寫入到兩個文件中,其中一個文件中數的個數<=10億,而另一個>=10億(這相當于折半了); 與要查找的數的次最高位比較并接著進入相應的文件再查找。 ....... 以此類推,就可以找到了,而且時間復雜度為O(logn)。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江源县| 余庆县| 治多县| 离岛区| 连山| 易门县| 德阳市| 分宜县| 酒泉市| 兴仁县| 永济市| 炎陵县| 宁河县| 海伦市| 日喀则市| 阳高县| 东乌珠穆沁旗| 扎鲁特旗| 金乡县| 工布江达县| 新余市| 新昌县| 包头市| 徐闻县| 崇州市| 安阳县| 吴桥县| 花莲市| 锡林郭勒盟| 凤山市| 许昌市| 高阳县| 开平市| 平谷区| 黔东| 汉沽区| 云霄县| 班戈县| 兴隆县| 南城县| 涪陵区|