原创 算法與數據結構專題總覽
1.專題概述 本專題對算法導論上系列算法做具體實現,並對一些算法設計思想進行歸納總結。對一些算法問題和分析過程,以易理解的方式,對其進行重新描述。 數據結構 動態數組 https://blog.csdn.net/x13262608
原创 計算機中的數學---相似矩陣及二次型
向量內積,長度,正交性 1.定義 設n維向量,x=x1x2...xn,y=y1y2...ynx={\begin{matrix} x_{1}\\ x_{2}\\ .\\ .\\ .\\ x_{n}
原创 數據結構--動態隊列
動態隊列 總體表述 隊列屬於容器的一種。 不同於雙向鏈表類容器,可以在容器的任意位置執行元素插入和刪除, 隊列容器只允許在尾部插入元素,在首部刪除元素。 隊列屬於操作受限的容器。 接口設計 template <typename
原创 數據結構--動態棧
動態棧 總體表述 棧屬於容器的一種。 不同於數組類容器,可以在容器的任意位置執行元素插入和刪除, 棧容器只允許在尾部,又稱棧頂,進行元素插入和刪除。 棧屬於操作受限的容器。 接口設計 template <typename T>
原创 數據結構--二叉搜索平衡樹/紅黑樹
二叉搜索平衡樹/紅黑樹 總覽 開發過程,經常需要對數據集合進行維護。 維護數據集合的數據結構可統稱爲容器。 樹形結構是集合容器的一種, 二叉搜索平衡樹,又名紅黑樹。 首先是一顆二叉搜索樹, 其具備以下性質: 對任意節點t,Key[
原创 數據結構--最小優先隊列
最小優先隊列 總體表述 隊列屬於容器的一種。 不同於雙向鏈表類容器,可以在容器的任意位置執行元素插入和刪除, 隊列容器只允許在尾部插入元素,在首部刪除元素。 隊列屬於操作受限的容器。 最小優先隊列,屬於具備特殊性質的隊列。 向隊列
原创 計算機中的數學---矩陣的初等變換與線性方程組
矩陣的初等變換 1.定義 初等行變換 對換兩行 以數k!=0k!=0k!=0乘某一行中的所有元 把某一行所有元的kkk倍加到另一行對應的元上去 把定義中的行換成列,即的矩陣的初等列變換的定義 矩陣的初等行變換與初等列變換,統稱初等
原创 計算機中的數學---向量組的線性相關性
向量組及其線性組合 1.定義 n個有次序的數a1,a2,...,ana_{1},a_{2},...,a_{n}a1,a2,...,an所組成的數組,稱n維向量。 2.定義 給定向量組A:a1,a2,...,amA:a_{1}
原创 算法--任意權重圖的最短路徑
最短路徑 指定源點的最短路徑 算法性質 算法性質 算法對關聯的圖的要求:無要求,任意權重圖均可。 算法性質: 可求得圖G所有s可達節點p,s~p的一條最短路徑。 接口設計 template<typename Key, typen
原创 數據結構--動態數組
動態數組 總體表述 開發過程,經常需要對數據集合進行維護。 維護數據結合的數據結構可統稱爲容器。 動態數組是維護數據集合的容器的一種, 具備數組操作簡單的特點,但允許集合內元素的動態增加和刪除。 接口設計 template<ty
原创 數據結構--最小堆
最小堆 總體表述 開發過程,經常需要對數據集合進行維護。 維護數據結合的數據結構可統稱爲容器。 最小堆是維護數據集合的容器的一種, 最小堆具備如下性質: 設V[i]爲位置i的元素值 1. 對維護的n個元素,順序存儲於索引爲1-n的
原创 幾何算法--點集的凸包
點集的凸包 接口設計 extern "C" class ALGORITHMLIB ConvexHull { public: ConvexHull(); ~ConvexHull(); DataStruct::Stack::D
原创 幾何算法--線段集合內是否存在相交線段檢測
線段集合內是否存在相交線段檢測 性質 檢測線段集合內是否存在兩個相交線段。 相比窮舉的方式, 利用事件點掃描法,最壞下時間複雜度爲Θ(nlg(n)) 接口設計 extern "C" class ALGORITHMLIB Segm
原创 幾何算法--點集中最短距離點對的距離
點集中最短距離點對的距離 性質 求取輸入點集最近點對的距離 相比於對所有點對窮舉,並得出結果的方式相比, 本算法時間複雜度爲Θ(nlg(n)),優於窮舉下的Θ(n^2) 接口設計 extern "C" class ALGORIT
原创 幾何算法--兩條線段相交檢測
兩條線段相交檢測 性質 利用向量叉積進行線段相交判斷。 時間複雜度Θ(1) 接口設計 extern "C" class ALGORITHMLIB SegmentIntersection { public: enum POINT