天天看點

可視化資料結構

基礎

  • Stack棧: 數組實作
  • Stack棧: 連結清單實作
  • Queues隊列: 數組實作
  • Queues隊列: 連結清單實作
  • Lists清單: 數組實作 ( java 版示範)
  • Lists清單: 連結清單實作 ( java 版示範)

索引

  • Binary Search Trees 二叉檢索樹
  • AVL Trees (平衡二叉檢索樹)
  • Red-Black Trees 紅黑樹 ( flash 版本示範)
  • Open Hash Tables 開放哈希表(Closed Addressing 鍊位址法)
  • Closed Hash Tables  閉合哈希表 (Open Addressing 開放定址法)
  • Closed Hash Tables, using buckets 使用桶
  • B Trees B樹
  • B+ Trees B+樹
  • 排序

    • Comparison Sorting 比較式排序
      • Bubble Sort 冒泡排序
      • Selection Sort 選擇排序
      • Insertion Sort 插入排序
      • Shell Sort 希爾排序
      • Merge Sort 歸并排序
      • Quck Sort 快速排序
    • Bucket Sort 桶排序
    • Counting Sort 計數排序
    • Radix Sort 基數排序

    堆資料結構

    • Heaps 堆
    • Binomial Queues 二項隊列

    圖算法

    • Breadth-First Search 廣度優先搜尋
    • Depth-First Search 深度優先搜尋
    • Connected Components 連通性
    • Dijkstra’s Shortest Path Dijkstra最短路徑
    • Prim’s Minimum Cost Spanning Tree 最小生成樹
    • Topological Sort  拓撲排序 ( flash 版本示範  java 版本示範)
    • Floyd-Warshall 算法(解決任意兩點間的最短路徑的一種算法) (flash 版本示範 java 版本示範)
    • 基于Kruskal算法的最小生成樹的建構 ( flash 版本示範 java 版本示範)

    動态程式設計

    • 計算 Fibonacci 數 ( java 版本示範)

    其它…

    • Disjoint Sets (MIT算法公開課中有一課讨論的是這個,見網易公開課)
    • Huffman Coding 哈夫曼編碼 ( java 版本示範)