原创 C++ 基礎 : 函數重載、引用、內聯函數、auto、範圍for循環

函數重載 引用 內聯函數 auto 範圍for循環 函數重載 C++中引入了一個新特性,函數重載。 在同一個作用域下,對於相同的函數名,函數的參數不同,不同類型的參數順序不同,參數的個數不同,都可以形成函數的重載(參數名

原创 Linux 進程控制 :進程創建,進程終止,進程等待,程序替換

進程創建 進程終止 進程等待 程序替換 進程創建 fork函數 創建一個子進程,父子進程代碼共享,數據獨有 #include <unistd.h> pid_t fork(void); 返回值:自進程中返回0,父進

原创 Linux 進程(二) 進程地址空間

上一節我們提到過父子進程的一個概念:父子進程代碼共享,數據各自開闢空間。 因爲子進程從父進程的PCB中拷貝了數據,所以它的代碼、數據以及運行的位置,都與父進程一模一樣。但是爲什麼這個代碼是無法修改的?爲什麼又需要再各自開闢空間呢?

原创 一篇文章快速搞懂計數排序

之前的幾篇講解了所有常用的比較排序,這次就來講一講非比較排序的計數排序。 計數排序又稱爲鴿巢原理,是對哈希直接定址法的變形應用。和其他排序不一樣,計數排序並不是通過比較元素的大小來實現的,而是通過統計所有相同元素出現的次數來進行排

原创 數據結構 樹(三)二叉樹鏈式結構實現

前幾章實現了二叉樹的順序結構和二叉樹的幾種遍歷,這次就來實現二叉樹的鏈式結構 數據結構 typedef char BTDataType; typedef struct BTNode { BTDataType data; str

原创 Linux下的基本指令

Linux下的基本指令 目錄: ls pwd cd touch mkdir rmdir rm man cp mv cat more less head tail cal find grep zip/unzip ta

原创 數據結構 樹(二)二叉樹的順序結構 : 堆的概念及結構、堆的實現、向上調整算法、向下調整算法

二叉樹的順序結構 堆的概念及結構 堆的實現 二叉樹的順序結構 普通的二叉樹是不適合用數組來存儲的,因爲可能會存在大量的空間浪費。而完全二叉樹更適合使用順序結構存儲。現實中我們通常把堆(一種二叉樹)使用順序結構的數組來存儲

原创 逆波蘭表達式求值

逆波蘭表達式又叫做後綴表達式。逆波蘭表示法是波蘭邏輯學家J・盧卡西維茲(J・ Lukasewicz)於1929年首先提出的一種表達式的表示方法 [1] 。後來,人們就把用這種表示法寫出的表達式稱作“逆波蘭表達式”。逆波蘭表達式

原创 數據結構 棧與隊列(三)循環隊列

循環隊列 實際中我們還會用到一種隊列叫做循環隊列,這種隊列把存儲空間前後連接起來,形成像環一樣的結構,解決了內存空間浪費的問題 這裏我們用順序結構來實現,因爲爲了防止溢出的情況,這裏我們需要多開一個數據的空間用作緩衝,這部分不用

原创 用隊列實現棧(C語言實現)

上一章實現了用棧來實現隊列,這一次我們試試用隊列來實現棧。 因爲棧的特性是先進後出,隊列是先進先出。 所以我們可以想到用兩個隊列,一個空隊列,一個放數據,當我們入隊的時候將數據直接放入非空隊列,出隊的時候將非空隊列中除隊尾外的所有

原创 python爬蟲 爬取有道翻譯詳解

這裏我們使用python的urllib來實現 首先,我們需要找到我們進行翻譯時上傳給服務器的數據。 我們可以通過查找審查元素中的Network這一欄目下,選擇執行Post方法的選項。 在General下的Request URL

原创 數據結構 棧與隊列(二)隊列的基本操作

隊列 隊列只允許在一端進行插入數據操作,在另一端進行刪除數據操作的特殊線性表,隊列具有先進先出的特性,就如同我們排隊一樣,先排的就先出去。 而進行插入的一端叫做隊尾,進行刪除的一端叫做隊頭 隊列可以用順序表和鏈表的結構來實現,在這

原创 python爬蟲 隱藏身份及設置代理

User-Agent 當我們使用爬蟲訪問各大網站時,可能會被網站發現訪問者只是一段python寫出的代碼,從而拒絕我們的訪問,如果想要解決這個問題,我們可以去修改user-agent。 首先,我們需要打開我們的瀏覽器,通過審查元素

原创 數據結構 表(二)鏈表的基本操作

鏈表是一種物理存儲結構上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。 對於表,圖,棧,隊列,樹等數據結構,我們採用鏈式和順序結構都可以實現。 而鏈表又分爲很多種,這一次先介紹最基礎的鏈表 因爲鏈

原创 數據結構 表(三)帶頭雙向循環鏈表

上一節裏實現的是最簡單的鏈表,在實際中那種鏈表不會單獨用來存儲數據,更多是作爲其他數據結構的子結構,如圖的鄰接表等。而比較常用的就是帶頭雙向循環鏈表。 通過對比我們可以看出有三個不同,多了頭節點,鏈表中的元素之間不再是單向而是