diff options
author | cathook <b01902109@csie.ntu.edu.tw> | 2014-04-22 02:28:31 +0800 |
---|---|---|
committer | cathook <b01902109@csie.ntu.edu.tw> | 2014-04-22 02:28:31 +0800 |
commit | 697558aa430c6bb5e9fb25d39ae9156a4d5403c3 (patch) | |
tree | 1aa80d9332e7e663f79e9af0f6a8a5864c901fdc | |
parent | a18df7f42f62932001cbb1c61c458abaf5d8bace (diff) | |
download | meow-697558aa430c6bb5e9fb25d39ae9156a4d5403c3.tar.gz meow-697558aa430c6bb5e9fb25d39ae9156a4d5403c3.tar.zst meow-697558aa430c6bb5e9fb25d39ae9156a4d5403c3.zip |
fix readme
-rw-r--r-- | README.asciidoc | 23 | ||||
-rw-r--r-- | README.html | 28 | ||||
-rw-r--r-- | meowpp/Usage.h | 2 | ||||
-rw-r--r-- | meowpp/dsa/MergeableHeap.h | 1 | ||||
-rw-r--r-- | meowpp/dsa/SegmentTree.h | 3 | ||||
-rw-r--r-- | meowpp/oo/Register_Implement.h | 40 | ||||
-rw-r--r-- | meowpp/utility.h | 2 |
7 files changed, 63 insertions, 36 deletions
diff --git a/README.asciidoc b/README.asciidoc index 9998a00..2fb5df4 100644 --- a/README.asciidoc +++ b/README.asciidoc @@ -39,7 +39,11 @@ :b: | + + + === meow:: *Functios* in utility.h + [options="header",width="100%",cols="1>s,5<,1<,10<",grid="rows"] |============================================================== |Name | Parameters | Return_Type | Description @@ -94,6 +98,7 @@ double `u2`) ''' + === meow:: *Usage* (C++ Class) ==== Description `Usage` 是用來分析argc, argv和輸出usage document的class. @@ -156,8 +161,9 @@ String const& value, String const& description)` + ''' + === meow:: *ImplementInterface/RegisterInterface* (C++ Class) -.Description +==== Description Assume there is a problem which can be solved by different algorithms. Then you can write multiple classes to approach this problem. + Now if you want to decide which algorithm to use in runtime, you can just @@ -166,13 +172,16 @@ approach this case by a simple way: * Let all the problem-solving classes inherit from `class ImplementInterface<T>` , and call the constructure with giving `identify` (type `T` ) . -* Create an class inherit from `RegisterInterface<T>` , and register all your -implement class to it by call `regImplement(pointer to the class)`. -* Select which implement class you want by call `getImplement(identify)` , -which will return the pointer to the corresponding class. +* Create an class inherit from `RegisterInterface<T>` , +and register all your implement class to it by call +`regImplement(pointer to the class)`. +* Select which implement class you want by call +`getImplement(identify)` , which will return the pointer +to the corresponding class. ''' + === meow:: *DisjointSet* (C++ class) ==== Description `DisjointSet` 是個*輕量級Data Dtructure*, 用來維護一堆互斥集的資訊. @@ -243,6 +252,7 @@ size_t `number2`)| size_t | very fast |將 `heap2` 的資料統統加到 `this` 中, 並且清空 `heap2` 時間複雜度中的M是 `heap2` 的資料數 |============================================== + [WARNING] ============================================== * 假設現在有兩個MergeableHeap `A` 和 `B`, 則: @@ -458,3 +468,6 @@ Value const& `delta`) |void|O(logN) |將區間 `[first,last]` 全部都加上 `delta` |============================================== + +''' + diff --git a/README.html b/README.html index b2a3db3..59ed324 100644 --- a/README.html +++ b/README.html @@ -1109,7 +1109,9 @@ String const& value, String const& description)</span><br> </div>
<div class="sect2">
<h3 id="_meow_strong_implementinterface_registerinterface_strong_c_class">meow:: <strong>ImplementInterface/RegisterInterface</strong> (C++ Class)</h3>
-<div class="paragraph"><div class="title">Description</div><p>Assume there is a problem which can be solved by different algorithms.
+<div class="sect3">
+<h4 id="_description_3">Description</h4>
+<div class="paragraph"><p>Assume there is a problem which can be solved by different algorithms.
Then you can write multiple classes to approach this problem.<br>
Now if you want to decide which algorithm to use in runtime, you can just
approach this case by a simple way:</p></div>
@@ -1123,23 +1125,26 @@ Let all the problem-solving classes inherit from </li>
<li>
<p>
-Create an class inherit from <span class="monospaced">RegisterInterface<T></span> , and register all your
-implement class to it by call <span class="monospaced">regImplement(pointer to the class)</span>.
+Create an class inherit from <span class="monospaced">RegisterInterface<T></span> ,
+and register all your implement class to it by call
+<span class="monospaced">regImplement(pointer to the class)</span>.
</p>
</li>
<li>
<p>
-Select which implement class you want by call <span class="monospaced">getImplement(identify)</span> ,
-which will return the pointer to the corresponding class.
+Select which implement class you want by call
+<span class="monospaced">getImplement(identify)</span> , which will return the pointer
+to the corresponding class.
</p>
</li>
</ul></div>
<hr>
</div>
+</div>
<div class="sect2">
<h3 id="_meow_strong_disjointset_strong_c_class">meow:: <strong>DisjointSet</strong> (C++ class)</h3>
<div class="sect3">
-<h4 id="_description_3">Description</h4>
+<h4 id="_description_4">Description</h4>
<div class="paragraph"><p><span class="monospaced">DisjointSet</span> 是個<strong>輕量級Data Dtructure</strong>, 用來維護一堆互斥集的資訊.
相關資料可參考
<a href="http://www.csie.ntnu.edu.tw/~u91029/DisjointSets.html">演算法筆記</a></p></div>
@@ -1231,7 +1236,7 @@ size_t <span class="monospaced">number2</span>)</p></td> <div class="sect2">
<h3 id="_meow_strong_mergeableheap_lt_element_gt_strong_c_class">meow:: <strong>MergeableHeap<Element></strong> (C++ class)</h3>
<div class="sect3">
-<h4 id="_description_4">Description</h4>
+<h4 id="_description_5">Description</h4>
<div class="paragraph"><p>一個用 <strong>左偏樹</strong> 實作的 <strong>Maximum-Heap</strong> , 除了原本heap有的功能外,
還支援 <span class="monospaced">merge</span>, <span class="monospaced">split</span> 等功能</p></div>
</div>
@@ -1401,7 +1406,7 @@ width:100%; <div class="sect2">
<h3 id="_meow_strong_kd_tree_lt_vector_scalar_gt_strong_c_class">meow:: <strong>KD_Tree<Vector, Scalar></strong> (C++ class)</h3>
<div class="sect3">
-<h4 id="_description_5">Description</h4>
+<h4 id="_description_6">Description</h4>
<div class="paragraph"><p><span class="monospaced">KD_Tree</span> 全名k-dimension tree, 用來維護由 <strong>N個K維度向量所成的集合</strong>,
並可於該set中查找 <strong>前i個離給定向量最接近的向量</strong></p></div>
</div>
@@ -1610,7 +1615,7 @@ bool <span class="monospaced">cmp</span>)</p></td> <div class="sect2">
<h3 id="_meow_strong_splaytree_lt_key_value_gt_strong_c_class">meow:: <strong>SplayTree<Key, Value></strong> (C++ class)</h3>
<div class="sect3">
-<h4 id="_description_6">Description</h4>
+<h4 id="_description_7">Description</h4>
<div class="paragraph"><p><span class="monospaced">SplayTree</span> 是一種神乎其技的資料結構, 維護一堆 Key→Value . 並且支援
一些 <span class="monospaced">std::map</span> 難以快速實踐的操作, 如 <span class="monospaced">split</span> , <span class="monospaced">merge</span> , <span class="monospaced">keyOffset</span></p></div>
</div>
@@ -1954,7 +1959,7 @@ SplayTree* <span class="monospaced">tree2</span>)</p></td> <div class="sect2">
<h3 id="_meow_strong_segmenttree_lt_value_gt_strong_c_class">meow:: <strong>SegmentTree<Value></strong> (C++ class)</h3>
<div class="sect3">
-<h4 id="_description_7">Description</h4>
+<h4 id="_description_8">Description</h4>
<div class="paragraph"><p>維護一個陣列, 並且讓user可以有區間查詢, 區間修改的小東東</p></div>
</div>
<div class="sect3">
@@ -2124,6 +2129,7 @@ Value const& <span class="monospaced">delta</span>)</p></td> </tr>
</tbody>
</table>
+<hr>
</div>
</div>
</div>
@@ -2132,7 +2138,7 @@ Value const& <span class="monospaced">delta</span>)</p></td> <div id="footnotes"><hr></div>
<div id="footer">
<div id="footer-text">
-Last updated 2014-04-22 02:21:30 CST
+Last updated 2014-04-22 02:28:11 CST
</div>
</div>
</body>
diff --git a/meowpp/Usage.h b/meowpp/Usage.h index d2ef083..60be936 100644 --- a/meowpp/Usage.h +++ b/meowpp/Usage.h @@ -88,6 +88,7 @@ namespace meow{ Strings usage_end ; Strings proc_arguments; }; + //# //# === meow:: *Usage* (C++ Class) //# ==== Description //# `Usage` 是用來分析argc, argv和輸出usage document的class. @@ -149,6 +150,7 @@ namespace meow{ //#================================== //# //#''' + //# } #include "Usage.hpp" diff --git a/meowpp/dsa/MergeableHeap.h b/meowpp/dsa/MergeableHeap.h index c1a2460..a7215bc 100644 --- a/meowpp/dsa/MergeableHeap.h +++ b/meowpp/dsa/MergeableHeap.h @@ -91,6 +91,7 @@ namespace meow{ //#|============================================== }; + //# //# [WARNING] //#============================================== //# * 假設現在有兩個MergeableHeap `A` 和 `B`, 則: diff --git a/meowpp/dsa/SegmentTree.h b/meowpp/dsa/SegmentTree.h index 89fd5d9..b9e4c64 100644 --- a/meowpp/dsa/SegmentTree.h +++ b/meowpp/dsa/SegmentTree.h @@ -106,6 +106,9 @@ namespace meow{ //#|============================================== }; + //# + //# ''' + //# } #include "SegmentTree.hpp" diff --git a/meowpp/oo/Register_Implement.h b/meowpp/oo/Register_Implement.h index 2e8ca32..a27591d 100644 --- a/meowpp/oo/Register_Implement.h +++ b/meowpp/oo/Register_Implement.h @@ -28,26 +28,26 @@ namespace meow{ virtual ~RegisterInterface(){ } std::vector<T> getIdentifys() const; }; - /******************************************************************* - @asciidoc - === meow:: *ImplementInterface/RegisterInterface* (C++ Class) - .Description - Assume there is a problem which can be solved by different algorithms. - Then you can write multiple classes to approach this problem. + - Now if you want to decide which algorithm to use in runtime, you can just - approach this case by a simple way: - - * Let all the problem-solving classes inherit from - `class ImplementInterface<T>` , and call the constructure with giving - `identify` (type `T` ) . - * Create an class inherit from `RegisterInterface<T>` , and register all your - implement class to it by call `regImplement(pointer to the class)`. - * Select which implement class you want by call `getImplement(identify)` , - which will return the pointer to the corresponding class. - - ''' - @asciidoc- - ******************************************************************/ + //# + //# === meow:: *ImplementInterface/RegisterInterface* (C++ Class) + //# ==== Description + //# Assume there is a problem which can be solved by different algorithms. + //# Then you can write multiple classes to approach this problem. + + //# Now if you want to decide which algorithm to use in runtime, you can just + //# approach this case by a simple way: + //# + //# * Let all the problem-solving classes inherit from + //# `class ImplementInterface<T>` , and call the constructure with giving + //# `identify` (type `T` ) . + //# * Create an class inherit from `RegisterInterface<T>` , + //# and register all your implement class to it by call + //# `regImplement(pointer to the class)`. + //# * Select which implement class you want by call + //# `getImplement(identify)` , which will return the pointer + //# to the corresponding class. + //# + //# ''' + //# } #include "Register_Implement.hpp" diff --git a/meowpp/utility.h b/meowpp/utility.h index ec47225..9e59470 100644 --- a/meowpp/utility.h +++ b/meowpp/utility.h @@ -40,7 +40,9 @@ namespace meow{ template<class T> inline double average(T const& beg, T const& end, T const& p, double sigs); + //# //# === meow:: *Functios* in utility.h + //# //# [options="header",width="100%",cols="1>s,5<,1<,10<",grid="rows"] //# |============================================================== //# |Name | Parameters | Return_Type | Description |