diff --git a/algorithm/README.md b/algorithm/README.md
index cbd80b3..7389c32 100644
--- a/algorithm/README.md
+++ b/algorithm/README.md
@@ -7,7 +7,6 @@
* [EIGHT.py](./EIGHT.py)
* [manacher.py](./manacher.py)
* [markov.py](./markov.py)
- * [README.md](./README.md)
* [sort](./sort)
* [binaryTree.py](./sort/binaryTree.py)
* [heapSort.py](./sort/heapSort.py)
@@ -15,5 +14,5 @@
* [radixSort.py](./sort/radixSort.py)
* [select.py](./sort/select.py)
* [shellSort.py](./sort/shellSort.py)
- * [steganography_to_do.py](./steganography_to_do.py)
* [sunday.py](./sunday.py)
+ * [README.md](./README.md)
diff --git a/dataStructure/README.md b/dataStructure/README.md
index f72a7f6..f6dcf5a 100644
--- a/dataStructure/README.md
+++ b/dataStructure/README.md
@@ -1,25 +1,25 @@
# 数据结构的实现
# 索引
* [.](.)
- * [allOone](./allOone)
- * [allOone.py](./allOone/allOone.py)
- * [test.py](./allOone/test.py)
- * [binaryHeap.py](./binaryHeap.py)
- * [binaryIndexedTree.cc](./binaryIndexedTree.cc)
- * [binaryTree.py](./binaryTree.py)
- * [hashTable.py](./hashTable.py)
- * [huffman.cc](./huffman.cc)
- * [leftHeap.py](./leftHeap.py)
- * [loserTree.py](./loserTree.py)
- * [map](./map)
- * [map.cc](./map/map.cc)
- * [map.exe](./map/map.exe)
- * [README.md](./README.md)
- * [segTree.cc](./segTree.cc)
- * [splayTree.py](./splayTree.py)
- * [stack](./stack)
- * [stack.cc](./stack/stack.cc)
- * [stack.exe](./stack/stack.exe)
- * [stack.o](./stack/stack.o)
- * [trie.py](./trie.py)
- * [winnerTree.py](./winnerTree.py)
+ * [allOone](./allOone)
+ * [allOone.py](./allOone/allOone.py)
+ * [test.py](./allOone/test.py)
+ * [binaryHeap.py](./binaryHeap.py)
+ * [binaryIndexedTree.cc](./binaryIndexedTree.cc)
+ * [binaryTree.py](./binaryTree.py)
+ * [hashTable.py](./hashTable.py)
+ * [huffman.cc](./huffman.cc)
+ * [leftHeap.py](./leftHeap.py)
+ * [loserTree.py](./loserTree.py)
+ * [map](./map)
+ * [map.cc](./map/map.cc)
+ * [map.exe](./map/map.exe)
+ * [segTree.cc](./segTree.cc)
+ * [splayTree.py](./splayTree.py)
+ * [stack](./stack)
+ * [stack.cc](./stack/stack.cc)
+ * [stack.exe](./stack/stack.exe)
+ * [stack.o](./stack/stack.o)
+ * [trie.py](./trie.py)
+ * [winnerTree.py](./winnerTree.py)
+ * [README.md](./README.md)
diff --git a/notes/README.md b/notes/README.md
index 8d2c769..b251689 100644
--- a/notes/README.md
+++ b/notes/README.md
@@ -4,16 +4,8 @@
# 索引
* [.](.)
- * [alg-general.md](./alg-general.md)
- * [hashTable.md](./hashTable.md)
- * [README.md](./README.md)
- * [sort.md](./sort.md)
- * [src](./src)
- * [coin1.jpg](./src/coin1.jpg)
- * [coin2.jpg](./src/coin2.jpg)
- * [coin3.jpg](./src/coin3.jpg)
- * [coin4.jpg](./src/coin4.jpg)
- * [recursive-tree.jpg](./src/recursive-tree.jpg)
- * [symbol.jpg](./src/symbol.jpg)
- * [test.jpg](./src/test.jpg)
- * [tree.md](./tree.md)
+ * [alg-general.md](./alg-general.md)
+ * [hashTable.md](./hashTable.md)
+ * [sort.md](./sort.md)
+ * [tree.md](./tree.md)
+ * [README.md](./README.md)
diff --git a/notes/hashTable.md b/notes/hashTable.md
index d234a70..6cacfe9 100644
--- a/notes/hashTable.md
+++ b/notes/hashTable.md
@@ -28,7 +28,7 @@ description:
-**[github地址](https://github.com/mbinary/algorithm-and-data-struture.git)**
+**[github地址](https://github.com/mbinary/algorithm-and-data-structure.git)**
哈希表 (hash table) , 可以实现 $O(1)$ 的 read, write, update
相对应 python 中的 dict, c语言中的 map
diff --git a/notes/sort.md b/notes/sort.md
index 92644b0..7a20109 100644
--- a/notes/sort.md
+++ b/notes/sort.md
@@ -36,7 +36,7 @@ description:
-**[github地址](https://github.com/mbinary/algorithm-and-data-struture.git)**
+**[github地址](https://github.com/mbinary/algorithm-and-data-structure.git)**
排序的本质就是减少逆序数, 根据是否进行比较,可以分为如下两类.
* 比较排序
diff --git a/notes/tree.md b/notes/tree.md
index cfc6253..88c4bf7 100644
--- a/notes/tree.md
+++ b/notes/tree.md
@@ -35,7 +35,7 @@ description:
-**[github地址](https://github.com/mbinary/algorithm-and-data-struture.git)**
+**[github地址](https://github.com/mbinary/algorithm-and-data-structure.git)**
# 1. 概念
* 双亲
@@ -177,22 +177,6 @@ Aho-Corasick automation,是在字典树上添加匹配失败边(失配指针),
>![](https://upload-images.jianshu.io/upload_images/7130568-85329df49fa54685.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
-
-在每一步中,算法先查找当前节点的 “孩子节点”,如果没有找到匹配,查找它的后缀节点(suffix) 的孩子,如果仍然没有,接着查找后缀节点的后缀节点的孩子, 如此循环, 直到根结点,如果到达根节点仍没有找到匹配则结束。
-
-当算法查找到一个节点,则输出所有结束在当前位置的字典项。输出步骤为首先找到该节点的字典后缀,然后用递归的方式一直执行到节点没有字典前缀为止。同时,如果该节点为一个字典节点,则输出该节点本身。
-
-输入 abccab 后算法的执行步骤如下:
-
-输入字符串的分析 abccab
-节点 剩余字符串 输出:结束位置 过渡 输出
-() abccab 从根开始
-(a) bccab a:1 ()→子节点 (a) 当前节点
-(ab) ccab ab:2 (a)→子节点 (ab) 当前节点
-(bc) cab bc:3, c:3 (ab)→后缀节点 (b)→子节点 (bc) 当前节点,字典后缀
-(c) ab c:4 (bc)→后缀节点 (c)→后缀节点 ()→子节点 (c) 当前节点
-(ca) b a:5 (c)→(ca) 字典后缀
-(ab) ab:6 (ca)→后缀节点 (a)→子节点 (ab) 当前节点
# 5. 平衡二叉树
上面的二叉查找树不平衡,即经过多次插入,删除后, 其高度变化大, 不能保持$\Theta(n)$的性能