原创 棧的存儲方式

棧(Stack) 棧元素具有線性關係,即前驅後繼關係。只不過它是一種特殊的線性表而已。定義中說是在線性表的表尾進行插入和刪除操作,這裏表尾是指棧頂,而不是棧底。 特性 它的特殊之處在於限制了這個線性表的插入和刪除的位置,它始

原创 分層模型

OSI七層模型 1.物理層:主要定義物理設備標準,如網線的接口類型、光纖的接口類型、各種傳輸介質的傳輸速率等。它的主要作用是傳輸比特流。這一層的數據叫做比特。 2.數據鏈路層:定義瞭如何讓格式化數據以幀爲單位進行傳輸,以及如何

原创 統一通訊組件接口

項目開發時:上層業務流和基礎組件要合理分層 可跨平臺操作 未定性 連接的處理(短連接,長連接) 公網:斷鏈修復 公網:粘包處理

原创 線性表的順序存儲

線性表是零個或者多個數據元素的有限序列。 特性: 數據元素之間是有順序的. 數據元素個數是有限的. 數據元素的類型必須相同. 數學定義: 線性表是具有相同類型的 n( ≥ 0)個數據元素的

原创 大O表示法

算法的時間複雜度 常見的時間複雜度 執行次數 階 非正式術語 12 O(1)

原创 隊列

隊列是一種特殊的受限制的線性表。 隊列(queue)是隻允許在一端進行插入操作,而在另一端進行刪除操作的線性表。 隊列是一種先進先出的(First In First Out)的線性表,簡稱FIFO。允許插入的一端爲隊尾,允許刪

原创 算法相關

算法–特定問題求解步驟的描述,在計算機中表現爲指令的有限序列,算法是獨立存在的一種解決問題的方法和思想。 數據結構只是靜態的描述了數據元素之間的關係,高效的程序需要在數據結構的基礎上設計和選擇算法。 算法是爲了解決實際問題而設計的

原创 模板

建立一個通用函數, 其函數類型和形參類型不具體制定,用一個虛擬的類型來代表。這個通用函數就成爲函數模 板。凡是函數體相同的函數都可以用這個模板代替,不必定義多個函數,只需在模板中定義 一次即可。在調用函數時系統會根據實參的類

原创 tcp三次握手和四次斷開概要

三次握手 建立連接時,客戶機向服務器發送一個TCP數據包,這個數據包中不含有任何數據,只有客戶機的啓動順序,使用的目的端口號和TCP數據包的最大分段大小,還包含一個同步標示—syn1. 服務器對自己的啓動序號和最大分段大小進行

原创 gcc

gcc(Gun CompilerCollection縮寫),最初是是作爲c語言的編譯器(Gun C Compiler),現在已經支持很多語言了,如c、c++、java等語言 gcc的主要特徵: 1) gcc是一個可移植的編譯器

原创 雙向鏈表

在單鏈表的結點中增加一個指向其前驅的pre指針。 爲什麼需要雙向鏈表? 單鏈表的結點都只有一個指向下一個結點的指針 單鏈表的數據元素無法直接訪問其前驅元素 逆序訪問單鏈表中的元素是極其耗時的操作!(如圖) 普通位置插

原创 通信過程

兩臺計算機通過TCP/IP協議通訊的過程 應用層: FTP 傳輸層: TCP/UDP 網絡層: IP 鏈路層: 以太網協議 路由器主要作用於 網絡層 鏈路層有以太網、令牌環網等標準,鏈路層負

原创 循環鏈表

鏈表中最後一個結點的指針域指向頭結點,整個鏈表形成一個環。 插入數據元素操作與單鏈表操作一樣 頭插法 分析: 新節點指向當前的第一個結點 尾結點指向新節點 第一次插入結點 尾節點指針指向第一個數據節點(即自己指向自己)

原创 網絡應用程序設計模式

C/S模式 傳統的網絡應用設計模式,客戶機(client)/服務器(server)模式。需要在通訊兩端各自部署客戶機和服務器來完成數據通信。 B/S模式 瀏覽器()/服務器(server)模式。只需在一端部署服務器,

原创 算法效率的度量

事後統計 主要通過設計好的測試程序和數據,利用計算機的計時器對不同算法的編程的程序的運行時間進行比較,從而確定算法效率的高低。 統計方法:比較不同算法對同一組輸入數據的運行處理時間。