2020 11 21 騰訊雲區域研發二面

2021-10-10 17:32:04 字數 1552 閱讀 3862

http協議

http請求頭有哪些字段

mysql的sql語句查詢過程

如何查詢mysql中查詢慢的sql語句

mysql查詢語句出現耗時解決

多型:同一操作作用於不同的物件,可以有不同的解釋,產生不同的執行結果。在執行時,可以通過指向基類的指標,來呼叫實現派生類中的方法。(即乙個介面,多種方法)

意義

把不同的子類物件都當作父類來看,可以遮蔽不同子類物件之間的差異,寫出通用的**,做出通用的程式設計,以適應需求的不斷變化。

賦值之後,父型別的引用就可以根據當前賦值給它的子物件的特性以不同的方式運作。也就是說,父親的行為像兒子,而不是兒子的行為像父親。

為了**可重用性、增加可維護性,讓**更容易被他人理解、保證**可靠性。

有軟體開發經驗的朋友應該有這樣的體會:構建乙個優秀的系統最困難之處不在於編碼(coding),而是在早期做出的設計(design)上的決定。設計是軟體開發生命週期中的關鍵階段,好的設計能產生好的產品,而不當的設計則會影響最終產品的質量。設計的重要性已經深入人心,這從人們熱烈討論和研究設計模式就能看出來。設計模式是擁有多年開發設計經驗的人給我們的經驗傳承,它是作為專家的建議而引入的,它背後的真正威力是其對真實世界的抽象。如果我們沒有足夠的經驗,我們很難做出好的設計,但是富有經驗的開發者和設計者以設計模式的形式將他們的經驗傳授給我們,擁有了這些經驗之後,我們也能做出好的設計來了。不僅如此,設計模式還提高了我們軟體復用的水平,從而提高了生產效率。

採用位圖排序。

位圖排序是一種效率極高(複雜度可達o(n))並且很節省空間的一種排序方法,但是這種排序方法對輸入的資料是有比較嚴格的要求(資料不能重複,大致知道資料的範圍)。位圖排序即利用位圖或者位向量來表示集合。可以說演算法中用到位操作的很多,因為速度快,空間小,比如哈有bitmask dp。文中的問題可以抽象為對[1:10000000]區間內的隨機排列進行排序,而且記憶體限制在1m左右。外部排序可能是第乙個閃近腦子裡的答案。作者在文中的解法就是利用bitmap演算法,每乙個bit代表乙個數字,用10000000個位元位就可以將所有的數字表示出來。然後遍歷,設定1為存在,0為不存在,然後順序輸出即可。

位圖排序的應用

給40億個不重複的unsigned int的整數,沒有排過序,然後再給乙個數,如果快速判斷這個數是否在那40億個數當中。因為unsigned int資料的最大範圍在在40億左右,4010^8/10241024*8=476,因此只需申請512m的記憶體空間,每個bit位表示乙個unsigned int。讀入40億個數,並設定相應的bit位為1.然後讀取要查詢的數,檢視該bit是否為1,是1則存在,否則不存在。

給40億個unsigned int的整數,如何判斷這40億個數中哪些數重複?同理,可以申請512m的記憶體空間,然後讀取40億個整數,並且將相應的bit位置1。如果是第一次讀取某個資料,則在將該bit位置1之前,此bit位必定是0;如果是第二次讀取該資料,則可根據相應的bit位是否為1判斷該資料是否重複。

tip:介紹要有條理,思路清晰,掌握細節。

騰訊雲偷襲騰訊雲

43次攻擊全部失敗?e.m盯著電腦螢幕上的黑白 眉頭緊皺,陷入了沉思。按照計畫,這次應該是十拿九穩的定局。團隊在半個月內挖掘出的漏洞,原本是e.m最大的信心 根據掌握的情報,他畫了一張攻擊藍圖,而攻擊的起點正是對方的漏洞。如今,幾乎所有的漏洞都不能利用,讓這一場 秘密行動 陷入了僵局。時間回到九月份...

騰訊雲直播 呼叫騰訊雲RoomService

如果您只需要做乙個簡單的直播方案,也就是 主播推流 觀眾 文字互動,參考單場次直播,或者 自由開播 就可以解決問題。但是如果您要上連麥功能,單純依靠 txlivepusher 和 txliveplayer 兩個元件進行組合,那難度可就高了,為了降低這裡的實現難度,我們推出了liveroom元件,它分...

騰訊雲 簡訊

主要引數 簡訊簽名 模板id 1.發簡訊工具類 public class smsutil 簽名 傳送驗證碼 param phone 手機號 param smscode 驗證碼 return public static boolean sendsms string phone,string smsco...