原创 task_struct(進程描述符)

文章目錄一、什麼是進程?PCB是什麼??二、task_struct1、Linux下如何去查看task_struct2、task_struct的類型a、調度數據成員b、信號處理c、進程隊列指針d、進程標識e、時間數據成員f、信號量數

原创 ptrace追蹤

https://www.cnblogs.com/tangr206/articles/3094358.html

原创 Linux環境變量

文章目錄一、什麼是環境變量?二、Linux下的環境變量三、常見的環境變量四、有了環境變量,如何操作環境變量?五、環境變量表六、使用第三方接口獲取環境變量1、命令行第三個參數char* env[]2、第三方環境變量environ獲取

原创 劍指offer之二叉樹中和爲某一值的路徑

文章目錄一、題目描述二、思路三、代碼 一、題目描述 輸入一顆二叉樹的跟節點和一個整數,打印出二叉樹中結點值的和爲輸入整數的所有路徑。路徑定義爲從樹的根結點開始往下一直到葉結點所經過的結點形成一條路徑。(注意: 在返回值的list中

原创 mm_struct(內存描述符)

文章目錄一、引出概念二、Linux下數據大致是這樣管理三、mm_struct一、Linux下查看mm_struct二、mm_struct是什麼? 三、mm_struct四、vm_area_struct五、vm_operations

原创 並行、併發

並行:多個進程在多個CPU分別同時執行。 併發:多個進程在一個CPU下采用進程切換的方式,在一段時間內,讓多個進程都得以推進。

原创 動態規劃之年終獎

一、題目描述 小東所在公司要發年終獎,而小東恰好獲得了最高福利,他要在公司年會上參與一個抽獎遊戲,遊戲在一個6*6的棋盤上進行,上面放着36個價值不等的禮物,每個小的棋盤上面放置着一個禮物,他需要從左上角開始遊戲,每次只能向下或者

原创 淺析Linux下Gcc生成和使用靜態庫和動態庫

文章目錄一、基本概念1.1什麼是庫?1.2庫分了哪幾種?1.3怎麼在Linux系統下生成庫1.4一個可執行程序依賴什麼庫二、創建好的庫如何去使用 一、基本概念 1.1什麼是庫? 在Windows和Linux兩大操作系統中都存在着庫。實

原创 LeetCode和劍指offer之刪除鏈表中的重複元素

文章目錄一、題目描述二、思路三、代碼表示 一、題目描述 給定一個排序鏈表,刪除所有含有重複數字的節點,只保留原始鏈表中 沒有重複出現示例 1: 示例1: 輸入: 1->2->3->3->4->4->5 輸出: 1->2->5 的數字

原创 劍指offer之包含min函數的棧

文章目錄一、題目描述二、思路三、代碼實現 一、題目描述 定義棧的數據結構,請在該類型中實現一個能夠得到棧中所含最小元素的min函數(時間複雜度應爲O(1)) 二、思路 定義兩個棧s1,s2,s1存的是整個數據,s2棧存的數據保證每一次

原创 劍指offer之二維數組中的查找

文章目錄一、題目描述二、思路三、代碼 一、題目描述 在一個二維數組中(每個一維數組的長度相同),每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成一個函數,輸入這樣的一個二維數組和一個整數,判斷數組中是否含

原创 劍指offer之數的子結構

文章目錄 一、題目描述二、代碼及理解三、個人總結及感受 一、題目描述     輸入兩棵二叉樹A,B,判斷B是不是A的子結構。(ps:我們約定空樹不是任意一個樹的子結構) 二、代碼及理解 子樹的可能:     判斷是否是子樹,當pR

原创 劍指offer之兩個棧實現一個隊列

一、題目描述 用兩個棧來實現一個隊列,完成隊列的Push和Pop操作。 隊列中的元素爲int類型。 二、圖解 三、代碼實現 class Solution { public: void push(int node) {

原创 二叉搜索樹

二叉搜索樹 文章目錄二叉搜索樹4.1.1 二叉搜索樹的概念4.1.2 二叉搜索樹操作1、二叉搜索樹的查找2、二叉搜索樹的插入a、樹爲空,則直接插入b、樹不空,按二叉搜索樹性質查找插入位置,插入新節點3、二叉搜索樹的刪除4.1.3 二叉

原创 劍指offer之二叉樹的鏡像

一、題目描述 操作給定的二叉樹,將其變換爲源二叉樹的鏡像。 輸入描述: 二叉樹的鏡像定義:源二叉樹 8 / \ 6 10 / \ / \ 5 7 9 11 鏡像二叉樹 8