## 數據結構
**常見數據結構**
stack、heap、list、doubly-linked-list、queue、array
**array**
> 數組,最簡單而且應用最廣泛的數據結構之一
> 使用連續的內存來存儲、數組中的所有元素必須是相同的類型或類型的衍生(同質數據結構)、元素可以通過下標直接訪問
* PHP 的變量采用zvalue的類型,不是傳統意義上的數組
**linked-list**
> 鏈表,線性表的一種,最基本、最簡單,也是最常用的數據結構
> 元素之間的關系是1對1的關系`首尾相接`,除了第一個和最后一個,順序存儲結構和鏈式存儲結構兩種
**doubly-linked-list**
> 雙向鏈表
> 每個元素都是一個對象,每個對象有一個關鍵字key和兩個指針`next`和`prev`
**stack**
> 棧,和隊列相似,一個帶有數據存儲特性的數據結構
> 存儲數據是先進后出,棧只有一個出口,只能從棧頂部增加和移除元素
**heap**
> 堆,也叫二叉堆,近似完成二叉樹的數據結構
> 子節點的鍵值或者索引總是小于或總是大于它的父節點,大的叫大根堆,小的小根堆
**list**
> 線性表,由0或者多個數據元素組成的有限序列
> 線性表是一個序列、0個元素構成的線性表是空表、第一個元素無先驅,最后一個元素無后繼,長度是元素的個數,長度有限
**queue**
> 隊列
> 先進先出`FIFO`,并發中使用,可以安全將對象從一個任務傳給另一個任務
**set**
> 集合
> 保存不重復元素
**map**
> 字典
>關聯數組,也被叫做字典或者鍵值對
**graph**
> 圖
> 通常使用鄰接矩陣和鄰接表表示,前者易實現但是對于稀疏矩陣會浪費較多空間,后者使用鏈表的方式存儲信息但是對于圖搜索時間復雜度較高
- 簡介
- PHP
- 字符串函數
- 數組函數
- 正則
- 加密函數
- 面向對象
- 關鍵字
- 設計模式
- 魔術方法
- 機制擴展
- 會話機制
- PHP框架
- laravel
- 問題
- swoole
- easyswoole
- workerman
- 數據庫
- Sphinx
- MongoDB
- MemCache
- Redis
- 基礎操作
- 數據類型
- 持久化
- 分布式鎖
- 內存模型
- redis高級特性
- MySql
- 基礎操作
- 數據類型
- 數據表引擎
- 鎖機制
- 事務處理
- 存儲過程
- 觸發器
- 索引
- 關聯查詢
- 分析SQL語句-優化查詢
- 分區分表
- 主從復制
- MySql安全性
- 網絡協議
- HTTP
- header詳解
- 狀態碼
- nginx-配置
- 邏輯算法
- 時間和空間復雜度
- 常見算法
- 數據結構
- 核心
- 進程、線程、協程
- 存儲容量-計量單位
- 開發軟件及配置
- 版本控制器
- Git
- Fidder
- Fidder-Android7
- 自動化部署
- Jenkins
- supervisor
- Elasticsearch
- LogStash
- RabbitMQ
- AB測試
- JAVA-JDK
- FileBeat
- PhpStorm
- Composer
- Linux
- API安全
- 高并發及大流量相關概念
- 網站優化
- WEB
- Electron