/Algorithm

:bookmark: Records for Algorithm.

Primary LanguageC#

Algorithm

Records for Algorithm.

https://fakestandard.github.io/algorithm/

資料結構

  • 陣列(Array)
  • 鏈結串列(Linked List)
  • 堆疊(Stack)
  • 佇列(Queue)
  • 樹(Tree)
  • 圖(Graph)
  • 雜湊表(Hash Table)

經典演算法

  • 分治演算法(Divide and conquer Algorithm)
  • 迭代演算法(Iterative Algorithm)
  • 遞迴演算法(Recursion Algorithm)
  • 動態規劃演算法(Dynamic Programming Algorithm)
  • 枚舉演算法(Enumeration Algorithm)
  • 貪心演算法(Greedy Algorithm)
  • 回溯演算法(Backtracking Algorithm)

排序演算法

  • 氣泡排序法(Bubble Sort)
  • 選擇排序法(Selection Sort)
  • 插入排序法(Insert Sort)
  • 謝耳排序法(Shell Sort)
  • 快速排序法(Quick Sort)
  • 合併排序法(Merge Sort)
  • 基數排序法(Radix Sort)
  • 堆積樹排序法(Heap Tree Sort)

搜尋演算法

  • 循序搜尋演算法(Sequential Search)
  • 二分搜尋演算法(Binary Search)
  • 內插搜尋演算法(Interpolation Search)
  • 費氏搜尋演算法(Fibonacci Search)

堆疊應用

  • 陣列實作堆疊(Array implementation of Stack)
  • 串列實作堆疊(List implementation of Stack)
  • 經典河內塔(Tower Of Hanoi)
  • 八皇后經典謎題(Eight Quenes)

佇列應用

  • 陣列實作佇列(Array implementation of Queue)
  • 串列實作佇列(List implementation of Queue)
  • 雙向佇列(Double-ends Queues, Deques)

陣列應用

  • 矩陣相加(Matrix Add)
  • 矩陣相乘(Matrix Multiply)
  • 轉置矩陣(Matrix Transpose)
  • 稀疏矩陣(Sparse Matrix)
  • 多項式陣列表示法(Polynomial)

鏈結串列應用

  • 單向串列插入節點與連結兩串列演算法(Linked List Insert And Concatenation)
  • 單向串列刪除節點演算法(Linked List Delete)
  • 單向串列反轉演算法(Linked List Reverse)

雜湊應用

  • 安全性演算法(Security Algorithm)
  • 雜湊演算法(Hash Algorithm)
  • 碰撞與溢位處理(Collision and Overflow)

樹的應用

  • 陣列實作二元樹(Array Implementation of Binary Tree)
  • 串列實作二元樹(Linked List Implementation of Binary Tree)
  • 二元樹走訪(Binary Tree Traversal)
  • 二元搜尋樹(Binary Search Tree)
  • 二元樹插入節點(Binary Tree Insert Node)
  • 二元樹刪除節點(Binary Tree Delete Node)
  • 二元排序樹(Binary Sort Tree)
  • 二元運算樹(Binary Expression Tree)
  • 引線二元樹(Threaded Binary Tree)

圖的應用

  • 圖形表示法
    • 相鄰矩陣法(Adjacency Matrix)
    • 相鄰串列法(Adjacency List)
    • 相鄰複合串列法(Adjacency Multilist)
    • 索引表格法(Index Table)
  • 深度優先搜尋法(Depth First Search, DFS)
  • 廣度優先搜尋法(Breadth First Search, BFS)