1. 程式人生 > >今日頭條面試經驗分享

今日頭條面試經驗分享

1.給一個小頂堆,再給你一個數,讓你插入到這個堆裡。

思路:把這個數放到堆的最後,然後向上調整堆的最後一個非葉子結點。

2.求一個 字串的 最長迴文子串  並且返回第一個出現的下標。

思路:中心擴充套件法,逆序。

3.有一個表,有id,name,age等欄位,讓你查詢姓 “李”和姓“王” 並且年齡>18歲的 記錄。

select * from table where age>18 and (name = '李%' or name ='張%')

4. 對上一問題  如何建立索引,加快查詢。

5.tcp三次握手和四次揮手   畫圖。

6.執行緒和程序,以及程序間通訊。

7.php是多程序性語言還是單程序性語言。

   多程序。

8.vector中都會用到哪些 stl的函式

push_back(),empty(),erase(),count()等。

9.棧的反轉,只能使用O(1)的空間。

http://www.cnblogs.com/4everlove/p/3666016.html

10. redis 中都有哪些資料結構。

String  set get decr incr mget
Hash    hget hset hgetall
List    lpush rpush lpop rpop lrange
Set     sadd spop smembers sunion
Sorted set  
pub/sub
Transactions

11. 還有哪些開源的快取 ,為什麼不使用memcache等,而使用redis。

從結構上來說,redis的磁碟儲存資料要比mysql簡單,而記憶體結構卻比memcached多樣和靈活。 
從擴充套件性來說,由於redis的底盤簡單而穩定,使其有著良好的擴充套件性,而上層的複雜性使redis可以適應於更多複雜的業務場景。 

12.假設你的伺服器效能 不佳,你是如何定位問題的。比如是程式碼的問題還是機房的問題等等。

暫時只記起來這麼多。