原创 LintCode比較字符串

容易 比較字符串 27% 通過 比較兩個字符串A和B,確定A中是否包含B中所有的字符。字符串A和B中的字符都是 大寫字母 您在真實的面試中是否遇到過這個題?  Yes 樣例 給出 A = "ABCD" B

原创 LintCode 字符串查找

字符串查找(又稱查找子字符串),是字符串操作中一個很有用的函數。你的任務是實現這個函數。 對於一個給定的 source 字符串和一個 target 字符串,你應該在 source 字符串中找出 target 字符串出現的第一個位置(從

原创 libco協程

libco協程框架 協程簡介 協程簡稱用戶態線程,是在線程下自己實現的切換的用戶態程序切換。實現方式大致分爲以下方式: 使用glibc ucontext 使用彙編實現 c 語言 switch-case c setjmp longjmp l

原创 TCP Three-Way handshake

initialize TCP variables: sequence numbers buffers,flow control info Client: connection initiator Socket clientSocket

原创 LintCode 二叉樹的遍歷 (非遞歸)

前序: class Solution { public: /** * @param root: The root of binary tree. * @return: Preorder in vector wh

原创 udp協議

UDP是一種simple demultiplexer 因爲傳輸層之下的網絡層,提供的也是不可靠的傳輸, 也就是UDP用不可靠的服務來提供不可靠的服務 那麼爲什麼還需要UDP呢? 因爲網絡層提供的端對端是 host to host ,即根據

原创 14.04麒麟爲/檢查磁盤時發生嚴重錯誤的解決方法

我寫過一篇叫做 如何硬盤裝麒麟系統 的經驗,介紹瞭如何不使用優盤的情況下使用wubi.exe程序在WindowsXP上安裝14.04版麒麟系統,但是運行系統之後發現,此種方法會在啓動時提示 爲/檢查磁盤時發生嚴重錯誤 ,並且無法進

原创 TCP header

端口號用來區別application sequence Number 用在滑動窗口協議,區別是否是要接收的 第一個data str 在整個 str 的編號 acknowledgement number 告訴對方這個number之前我

原创 TCP buffer

Tcp有以下特點 Reliable connection oriented byte-stream service 要處理 flow control: 要有一個機制控制傳送不要讓buffer溢出 congestion control: i

原创 LinCode落單的數

容易 落單的數 查看運行結果  60% 通過 給出2*n + 1 個的數字,除其中一個數字之外其他每個數字均出現兩次,找到這個數字。 您在真實的面試中是否遇到過這個題?  Yes 樣例 給出 [1,2,2,

原创 Lintcode快速冪

計算an % b,其中a,b和n都是32位的整數。 例如 231 % 3 = 2 例如 1001000 % 1000 = 0 這題要考慮輸入的a,b是否爲負數,結果是否溢出,是否超時,這裏用到了分治遞歸 class Solutio

原创 Lintcode 將整數A轉換爲B

樣例 如把31轉換爲14,需要改變2個bit位。 (31)10=(11111)2 (14)10=(01110)2 貼代碼 class Solution { public: /** *@param a, b: Two i

原创 TCP closing a connection

client closes socket: clientSocket.close(); step1 :client sends TCP FIN control segment to server step2: Server recei

原创 LintCode 子樹

容易 子樹 19% 通過 有兩個不同大小的二進制樹: T1 有上百萬的節點; T2 有好幾百的節點。請設計一種算法,判定 T2 是否爲 T1的子樹。 您在真實的面試中是否遇到過這個題?  Yes 樣例

原创 zmq的內部結構

介紹: 本文介紹了ZMQ的一些概述,但不會涉及到一些細節,因爲隨着版本的更新,實現的細節也不一樣,而且很多代碼是爲了兼容不同的操作系統和編譯器的,如果需要知道其中的細節,還是要看源碼。全局狀態: 在庫裏使用全局變量看起來是一件搬起石頭砸自