原创 數據結構-棧與隊列理解與實現

目錄棧結構體源碼實現隊列結構體源碼實現 棧 棧:只允許在一端進行插入或刪除操作的線性表。通過只操作top從而實現先進後出的特點。 結構體 #define MaxSize 50 //定義棧中元素的最大

原创 數據結構-樹與圖

目錄樹結構體樹的遍歷源碼實現圖重點掌握內容 數據結構中樹與圖的常用算法實現 樹 樹:是N(N>=0)個結點的有限集合。任意一顆非空樹應滿足: 有且僅有一個特定的稱爲根的結點 當N>1時,其餘結點可分爲m(m>0)個互不相交的

原创 Lua5.3自動GC觸發條件分析與理解

目錄1.GC觸發過程2.過程詳解2.1GCdebt2.2stepmul2.3pause3.總結參考資料 在我的上一篇文章《Lua5.3版GC機制的學習理解》的4.2部分GC觸發條件中,對這部分內容粗略的解釋爲:LuaGC是當lua

原创 數據結構-八大排序算法實現與分析

目錄排序分類一覽類型一 交換排序冒泡排序快速排序類型二 插入排序直接插入排序希爾排序類型三 選擇排序簡單選擇排序堆排類型四 歸併排序歸併排序類型五 基數排序基數排序代碼實現性能對比 最近在面試過程中,發現很多公司還是很注重基礎的,

原创 Lua5.3版GC機制理解

目錄1.Lua垃圾回收算法原理簡述2.Lua垃圾回收中的三種顏色3.Lua垃圾回收詳細過程4.步驟源碼詳解4.1新建對象階段4.2觸發條件4.3 GC函數狀態機4.4標記階段4.5清除階段5.總結參考資料 lua垃圾回收(Garb

原创 網絡IO模型理解與分析

目錄CPU (CentralProcessingUnit)物理CPU核心數邏輯CPU進程與線程1.單進程單線程模型2.單進程多線程模型3.多進程單線程模型4.多進程單線程模型網絡編程中5種I/O模型阻塞型I/O非阻塞型I/OI/O

原创 php-redis中scan命令使用腳本

文章目錄php-redis中scan命令使用腳本本文可執行腳本官方demo date:20200413 php-redis中scan命令使用腳本 項目中需要對某部分前綴的key進行遷移清洗,由於keys命令會造成redis阻塞,所

原创 PHP-foreach中引用缺陷

目錄1.現象2.原因3.分析 近期使用php開發過程中,發現一個foreach中引用的小坑。 1.現象 如下代碼: $arr = [1, 2, 4]; foreach ($arr as &$a) { $a = $a *

原创 數據結構-八大排序算法

目錄排序分類一覽類型一 交換排序冒泡排序快速排序類型二 插入排序直接插入排序希爾排序類型三 選擇排序簡單選擇排序堆排類型四 歸併排序歸併排序類型五 基數排序基數排序代碼實現性能對比 最近在面試過程中,發現很多公司還是很注重基礎的,對於

原创 Linux調試方法之core dump

目錄core dump介紹0.測試程序如下1.打開core dump2.輸出core dump3.執行該文件4.在終端輸出core dump5.在gdb下輸入bt 最近面試的時候,被問到在linux下程序異常該怎麼調試。經過學習才知道

原创 考研往事

謹以此文來紀念考研的日子 目錄我的經歷關於考研時間安排我的實際情況數學英語政治專業課關於其他的雜想1日出了擬錄取名單,懸着的這顆心終於放下了,這大半年真的心好累… 原本不知道要不要寫些什麼,畢竟初試分也不算高,而且已經有大神發了貼,

原创 Linux網絡基本信息配置

目錄1.linux網絡基本配置命令1.1 IP信息1.2路由信息1.3DNS信息2.雙IP配置方法方法一方法二 今天在項目搭建中,遇到一個需要給服務器配置雙IP的情況,記錄一下解決方法。 1.linux網絡基本配置命令 1.1 IP

原创 SQL-基本學習II-數據庫引擎與索引

目錄SQL語法編寫Mysql的數據引擎Innodb與Myisam的區別關於索引索引的優點索引的缺點索引的實現原理 B樹與B+樹 這是SQL的第二篇,結合一些被面試的內容,對常考的數據庫問題進行一些總結。 SQL語法編寫 重複數據的一

原创 Lua5.3版自動GC觸發條件理解

目錄1.GC觸發過程2.過程詳解2.1GCdebt2.2stepmul2.3pause3.總結參考資料 在我的上一篇文章《Lua5.3版GC機制的學習理解》的4.2部分GC觸發條件中,對這部分內容粗略的解釋爲:LuaGC是當lua使用

原创 系統學習-協程理解

目錄CPU (CentralProcessingUnit)物理CPU核心數邏輯CPU進程與線程1.單進程單線程模型2.單進程多線程模型3.多進程單線程模型4.多進程單線程模型網絡編程中5種I/O模型阻塞型I/O非阻塞型I/OI/O多路