**時間復雜度**
> 執行算法所需要的計算工作量。計算機算法是問題規模`N`的函數`F(n)`,算法的時間復雜度也因此記做`T( n ) = O( f( n ) )`
> 當`N`越大,算法執行的時間增長率與`F(n)`的增長率成正比,稱作漸進時間復雜度
**時間復雜度計算公式**
>* 得出算法的計算次數公式
> * 
>* 用常數`1`來取代所有時間中的所有加法常數
> * 
>* 在修改后的運行次數函數中,只保留最高階項
>* 如果最高階存在且不是1,則去除與這個項相乘的常數
**常見時間復雜度類型**
>[info]* 常數階: O(1)
>* 線性階:O(n)
>* 平(立)方階:O(n^2) / O(n^3)
>* 特殊平方階:O( n^2 / 2 + n/2 ) -> O(n^2)
> * 
>* 對數階:O(log2n)
> * > while($n > = 1){
> * > $n = $n/2;
> * > }
>* nlog2n階:O(nlog2n)
>* 指數階
>[warning] O(1) > O(log2n) > O(n) > O(nlog2n) > O(n^2) > O(n^3) > O(2^n) > O(n!) > O(n^n)
****
**空間復雜度**
> 執行算法所需要消耗的內存空間,記做`S( n ) = O( f( n ) )`
> 包含程序代碼,輸入數據和輔助變量所占用的空間
> 計算和表示方法與時間復雜度類似,一般用復雜度的漸進性來表示
**空間復雜度計算方式**
>* 有時用空間換取時間
>* 冒泡排序的元素交換,空間復雜度O(1)
- 簡介
- 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