# 數組
## 定義:
> 數組(Array)是一種線性表數據結構,它用一組連續的內存空間,來存儲一組具有相同類型的數據。如果你學習過 C 語言,應該對這段定義很熟悉,但是在 PHP 這種動態語言中,因為數組底層是通過散列表(后面我們會介紹這個數據結構)實現的,所以功能異常強大,這段常規的數組定義在 PHP 中并不成立,PHP 的數組可以存儲任何類型數據,如果與 Java 對比的話,PHP 數組集成了 Java 的數組、List、Set、Map 于一身,所以寫代碼的效率比 Java 高了幾個量級。
## 算法復雜度
> 拋開 PHP 或 JavaScript 這種動態語言,對于傳統的數組,比如 C 語言和 Java 中的數組,在使用之前都需要聲明數組存儲數據的類型和數組的大小,數組的優點是可以通過下標值隨機訪問數組內的任何元素,算法復雜度是 O(1),非常高效,但是缺點是刪除/插入元素比較費勁,以刪除為例,需要在刪除某個元素后,將后續元素都往前移一位,如果是插入,則需要將插入位置之后的元素都往后移,所以對數組的插入/刪除而言,算法復雜度是 O(n),當然了,這個是針對 C / Java 這種語言而言,PHP 不受此約束,因為它不是傳統一樣上的數組嘛。
- PHP操作集合
- 獲取字符首字母
- PHP實現定時備份MySQL數據庫
- PHP定時發送郵件
- PHP基本語法
- 總結
- 命名空間
- 錯誤抑制符
- 位運算符
- 原碼,反碼,補碼
- traits
- PHP的反射機制
- const和define的區別
- 語法
- 常用的函數
- 1.變量及打印函數
- 2.引入文件
- 3.常量
- 4.錯誤處理
- 5.面向對象
- 數據結構與算法
- 結構
- 數組
- 索引
- 散列表(哈希表)
- 棧
- 隊列
- 鏈表
- 算法
- 排序算法
- 插入排序
- 冒泡排序
- 選擇排序
- 歸并排序
- 快速排序
- 查找算法
- 二分查找
- 二分查找變形版本1:查詢數據在序列中第一次出現
- 哈希算法
- 算法復雜度
- Smarty模板引擎
- composer
- yaf
- yaf的安裝配置
- 其它
- Java
- JavaSE
- 1.Java發展及JDK安裝配置
- 2.Eclipse的下載及安裝
- 3.Java開發基礎
- 虛擬機
- 2.編輯虛擬機設置
- 1.虛擬機下安裝centos
- 3.安裝vmtools
- Linux
- 1.vi和vim編輯器
- 2.開機、重啟和用戶登錄注銷
- 3.用戶管理
- 4.用戶組管理
- 5.用戶和組的相關文件
- 6.linux運行級別
- 7.幫助指令
- 8.文件目錄類指令
- 9.時間日期類
- 10.搜索查找類
- 11.壓縮和解壓縮
- 12.組管理和權限管理(難點,重點)
- 虛擬主機的配置
- phpstudy快捷配置
- 配置文件配置
- PHP面向對象高級特性
- SPL標準庫(PHP標準庫)
- PHP鏈式操作的實現
- 面向對象編程的基本原則
- 設計模式
- 基本的設計模式