原创 完全二叉堆之批量建堆

批量建堆 對堆的介紹請參考數據結構之堆。 批量建堆(Heapify):就是將已經存在n個元素的數組批量添加至堆中,而不是遍歷數組一個一個將元素添加至堆中。 遍歷數組一個一個添加元素至堆中,時間複雜度爲O(nlogn),而使用批量建

原创 圖的遍歷方式

圖的遍歷方式 圖的遍歷:從圖中某一頂點出發訪問圖中其餘頂點,且每一個頂點僅被訪問一次。 圖有2種常見的遍歷方式(有向圖、無向圖都適用) 廣度優先搜索(Breadth First Search,BFS),又稱爲寬度優先搜索、橫向優

原创 java使用鄰接表實現圖

鄰接表實現圖 圖的表示方式有兩種: 鄰接矩陣(Adjacency Matrix) 鄰接表(Adjacency List) 本文采用類似鄰接表的方式實現圖。 圖的基礎接口 public interface Graph<V, E>

原创 數據結構之圖的基本介紹

圖的基本介紹 線性表侷限於一個直接前驅和一個直接後繼的關係,樹也只能有一個直接前驅也就是父節點。當我們需要表示多對多的關係時,就需要用到圖。 圖的基本概念 圖(Graph)是一種數據結構,由頂點(vertex)和邊(edge)組成

原创 選擇排序是一個穩定排序算法嗎?

選擇排序 選擇排序是一種簡單直觀的排序算法,無論什麼數據都是O(n^2)的時間複雜度。所以用到它的時候,數據規模越小越好。 算法步驟 從數組中找出最小的那個元素,然後與最開始的元素交換位置 忽略第一步中找到的最小元素,重複執行步

原创 linux下源碼安裝nginx

1. 下載 官網地址:http://nginx.org/  下載壓縮包 http://nginx.org/download/nginx-1.8.0.

原创 LVS基本命令詳解

[root@chen ~]# ipvsadm -help ipvsadm v1.26 2008/5/15 (compiled with popt and IPVS v1.2.1) Usage: ipvsadm -A|E -t|u|f

原创 linux 下安裝tomcat

1. 下載tomcat[root@chen ~]# wget http://mirrors.hust.edu.cn/apache/tomcat/to

原创 Nginx簡介

1. Nginx介紹 Nginx ("engine x") 是一個高性能的HTTP和 反向代理 服務器,也是一個 IMAP/POP3/SMTP 服務

原创 Shell特殊變量

特殊變量列表 變量 含義 $0 當前腳本的文件名 $n 傳遞給腳本或函數的參數。n 是一個數字,表示第幾個參數。例如,第一個參數是$1,第二個參數是

原创 MongoDB權限設置

添加管理員賬號 > use adminswitched to db admin> db.createUser({user:'admin',pwd:'admin',roles:[{role:'dbAdminAnyDatabase',

原创 Shell簡介

Shell是什麼? Shell本身是一個用C語言編寫的程序,它是用戶使用Unix/Linux的橋樑,用戶的大部分工作都是通過Shell完成的。She

原创 MongoDB概念解析

下表是將SQL中的概念與Mongo中的一些概念的對照: SQL術語/概念 MongoDB術語/概念 解釋/說明 database database 數據庫 table collection 數據庫表/集合 row document 數

原创 MongoDB插入文檔

文檔的數據結構和JSON基本一樣。所有存儲在集合中的數據都是BSON格式。BSON是一種類json的一種二進制形式的存儲格式,簡稱Binary JSON。 語法 MongoDB使用insert()或save()方法向集合中插

原创 第一個Shell腳本

編寫腳本[root@chen shell]# cat hello.sh #!/bin/bash echo "hello world!"“#!”是一個約定的標記,它告訴系統這個腳本需要什麼解釋器來執行,即使用哪一種Shell。echo命令