From 2e2d499a45b185f72ae1e4b2c04bf3dfc9fa90ec Mon Sep 17 00:00:00 2001
From: CyC2018 <1029579233@qq.com>
Date: Thu, 14 Jun 2018 12:51:36 +0800
Subject: [PATCH] auto commit
---
notes/算法.md | 128 ++++++++++++++++++
pics/1c4e8185-8153-46b6-bd5a-288b15feeae6.png | Bin 0 -> 6144 bytes
pics/2861e923-4862-4526-881c-15529279d49c.png | Bin 0 -> 6144 bytes
pics/3ff4f00a-2321-48fd-95f4-ce6001332151.png | Bin 0 -> 16384 bytes
pics/54f1e052-0596-4b5e-833c-e80d75bf3f9b.png | Bin 0 -> 6144 bytes
pics/8587132a-021d-4f1f-a8ec-5a9daa7157a7.png | Bin 0 -> 6144 bytes
6 files changed, 128 insertions(+)
create mode 100644 pics/1c4e8185-8153-46b6-bd5a-288b15feeae6.png
create mode 100644 pics/2861e923-4862-4526-881c-15529279d49c.png
create mode 100644 pics/3ff4f00a-2321-48fd-95f4-ce6001332151.png
create mode 100644 pics/54f1e052-0596-4b5e-833c-e80d75bf3f9b.png
create mode 100644 pics/8587132a-021d-4f1f-a8ec-5a9daa7157a7.png
diff --git a/notes/算法.md b/notes/算法.md
index 18366255..207621ce 100644
--- a/notes/算法.md
+++ b/notes/算法.md
@@ -31,6 +31,9 @@
* [红黑树](#红黑树)
* [散列表](#散列表)
* [小结](#小结)
+* [七、其它](#七其它)
+ * [汉诺塔](#汉诺塔)
+ * [哈夫曼编码](#哈夫曼编码)
* [参考资料](#参考资料)
@@ -2032,6 +2035,131 @@ public class SparseVector {
}
```
+# 七、其它
+
+## 汉诺塔
+
+这是一个经典的递归问题,分为三步求解:
+
+1. 将 n-1 个圆盘从 from -> buffer
+2. 将 1 个圆盘从 from -> to
+3. 将 n-1 个圆盘从 buffer -> to
+
+如果只有一个圆盘,那么只需要进行一次移动操作,从上面的移动步骤可以知道,n 圆盘需要移动 (n-1)+1+(n-1) = 2n-1 次。
+
+
+
+
+
+
+
+
+
+```java
+public class Hanoi {
+ public static void move(int n, String from, String buffer, String to) {
+ if (n == 1) {
+ System.out.println("from " + from + " to " + to);
+ return;
+ }
+ move(n - 1, from, to, buffer);
+ move(1, from, buffer, to);
+ move(n - 1, buffer, from, to);
+ }
+
+ public static void main(String[] args) {
+ Hanoi.move(3, "H1", "H2", "H3");
+ }
+}
+```
+
+```html
+from H1 to H3
+from H1 to H2
+from H3 to H2
+from H1 to H3
+from H2 to H1
+from H2 to H3
+from H1 to H3
+```
+
+## 哈夫曼编码
+
+哈夫曼编码根据数据出现的频率对数据进行编码,从而压缩原始数据。
+
+例如对于文本文件,其中各种字符出现的次数如下:
+
+- a : 10
+- b : 20
+- c : 40
+- d : 80
+
+可以将每种字符转换成二进制编码,例如将 a 转换为 00,b 转换为 01,c 转换为 10,d 转换为 11。这是最简单的一种编码方式,没有考虑各个字符的权值(出现频率)。而哈夫曼编码能让出现频率最大的字符编码最短,从而保证最终的编码长度最短。
+
+首先生成一颗哈夫曼树,每次生成过程中选取频率最少的两个节点,生成一个新节点作为它们的父节点,并且新节点的频率为两个节点的和。选取频率最少的原因是,生成过程使得先选取的节点在树的最底层,那么需要的编码长度更长,频率更少可以使得总编码长度更少。
+
+生成编码时,从根节点出发,向左遍历则添加二进制位 0,向右则添加二进制位 1,直到遍历到根节点,根节点代表的字符的编码就是这个路径编码。
+
+
+
+```java
+public class Huffman {
+
+ private class Node implements Comparable {
+ char ch;
+ int freq;
+ boolean isLeaf;
+ Node left, right;
+
+ public Node(char ch, int freq) {
+ this.ch = ch;
+ this.freq = freq;
+ isLeaf = true;
+ }
+
+ public Node(Node left, Node right, int freq) {
+ this.left = left;
+ this.right = right;
+ this.freq = freq;
+ isLeaf = false;
+ }
+
+ @Override
+ public int compareTo(Node o) {
+ return this.freq - o.freq;
+ }
+ }
+
+ public Map encode(Map frequencyForChar) {
+ PriorityQueue priorityQueue = new PriorityQueue<>();
+ for (Character c : frequencyForChar.keySet()) {
+ priorityQueue.add(new Node(c, frequencyForChar.get(c)));
+ }
+ while (priorityQueue.size() != 1) {
+ Node node1 = priorityQueue.poll();
+ Node node2 = priorityQueue.poll();
+ priorityQueue.add(new Node(node1, node2, node1.freq + node2.freq));
+ }
+ return encode(priorityQueue.poll());
+ }
+
+ private Map encode(Node root) {
+ Map encodingForChar = new HashMap<>();
+ encode(root, "", encodingForChar);
+ return encodingForChar;
+ }
+
+ private void encode(Node node, String encoding, Map encodingForChar) {
+ if (node.isLeaf) {
+ encodingForChar.put(node.ch, encoding);
+ return;
+ }
+ encode(node.left, encoding + '0', encodingForChar);
+ encode(node.right, encoding + '1', encodingForChar);
+ }
+}
+```
+
# 参考资料
- Sedgewick, Robert, and Kevin Wayne. _Algorithms_. Addison-Wesley Professional, 2011.
diff --git a/pics/1c4e8185-8153-46b6-bd5a-288b15feeae6.png b/pics/1c4e8185-8153-46b6-bd5a-288b15feeae6.png
new file mode 100644
index 0000000000000000000000000000000000000000..35e992f75a3cfe097552e171dcd719162c0bb11f
GIT binary patch
literal 6144
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
literal 0
HcmV?d00001
diff --git a/pics/2861e923-4862-4526-881c-15529279d49c.png b/pics/2861e923-4862-4526-881c-15529279d49c.png
new file mode 100644
index 0000000000000000000000000000000000000000..6cc26c26bf67e95c5a3c0fc827d49e52f6e5162e
GIT binary patch
literal 6144
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
literal 0
HcmV?d00001
diff --git a/pics/54f1e052-0596-4b5e-833c-e80d75bf3f9b.png b/pics/54f1e052-0596-4b5e-833c-e80d75bf3f9b.png
new file mode 100644
index 0000000000000000000000000000000000000000..ad60a7e02cbc81f8eed19ccd5b47dfd2b0ce8554
GIT binary patch
literal 6144
zcmeHLYg7|w8lG${vKokN+vQqDk7&1LA$TJyBq`PcQIW2$L>3{jx&&_oY9&}m!hyBu
zBBX*4x*T9#K&n^*-nhhMpa{|8Wx)$z2&u#f5fTiJB!tY#ZXAd-|j2^lZ<%{P<4J
z%=c#I`QFR(KJy;=aATO$9FI8w05~zj*KPuUUvU6{;N$3EzjJt9F4g`+*uN=k4N!Z-
zOK-oJ#SMuF0f2h(T-)~7?AO0e3Xk3o0M2dC7D37Tawh=18N*x~^2gLTgSxe*Y)J6X
zG?`s_{@q6RFRr+6h;jSu!+7dj39R_v?7MW1T6p)K&-%GpZp`_sNIMG;t^J+9V@Rfa
z?t-~~mG7NByk@?y`=WU;NxIU!>ax6S;sIR(%E$CWM9qc!G>C3Kl%*F%13>R_f&);u
zgh&E7I~?4AmJU(?kdf=o0RYcsEdUT0pFsfjUIU0gZ}ES_(2~za$0clLfEx#Ryl7YO
zip*Akm_cD`Pq~mB+-ka&6)xAp8*V%1f8v|V3250`NcYa=gf>@&eqI@~YgQJa<1}na
zn6<3iZ$+k$dfh@dQb1IdIBa3@vBXm@KKdw+R!&C!yMkbk)}x=S&z;X~=yr4<9^InX
zb~(mZ#_XQOY%UD7zxvENP#hYtP`znkc=uP!?GScsv8FE1bk`Sogybhy%|My)%1o}z
zRM1c6mDvya&T%{2vdI!v1CIg<;4aoct|wKI-_58|t7UvP76n=FNb`g==h#oLO><2z
zA@%8_J0B0-DAjdWt?xWE*A?c%cVl>d3`;9HPsntR#@jX?7>V+7T`geP?vusB2^fU>p_B-_UEp53W
z#>3)fl==}zZQ(O!-?h6s+Ry6{K87OCDFs#l2F+G_C@!0(WDNkaVeMrbr~BxAeE8Yj}&>;;zCSJdh+nPcEO1z
zI%?5YunXQV^gcJ;?o)ucOR4qSAfccs)%1~<>z{b$l2}>FzRAHHO5RJ!PdI3W_2ZB4
zx9KJfDk+wukT!c#6Vn$}iK1jdeBRR*Dhzziy;k1<2(R2j9rQ<_W>Mr&XLH-N(U#w?I{%HT$=JVSclS0yZ
zgT^kMOP}cDhKZI;e1I$Pjzo3yo1nnJVo%-cDJn-s?G`I0LU0zJl`%x<+t|YqDI`32
zaO_cbXLgUGn%X}bv#E6;st=N8_gJRVM`ARqt)2Dc?j3ihWnduujGUCnIG&tnk1!Nc
zDn%8s6t*JRI$}DB%fx-d1M)N_dFqZ?+D`a8Rim*Pu$5>K?cn%>VX3mD2zSO4YSBKb
z_XN3CK&7LfK0y%7rcsKjZ!$33%ccv6qXA1>CN|>_MXGDN0;nSOOZH5wOV6b(&I^fq
z8F)BXfS{wKI^;O+y)zH{={`F#WgY_=qbv>dTTmpQM2!%Jm^AvU1#gFmXanbQtl~ry
z+ANms(D-$}1jKCSWMKIEQ%X4!-vqNn2W)(68;B;sJ=%!%xX$v=P6uHya?tPyu;O&8Njre_ia|LFEku3%|XfLEvfz&06#CnLAE_k3m_owu80F%9ZO=
zu=w#G>hu|gm+JJD`zjKhw9}RW!Cp5+>9J!e74Xf~k?N-X+=Gw5Z5_{H+XjbsC*YhH
zRAuKWxo|7xIZIi|D)l#Zy(RWPd=4itf~sN~65GR~tm1oWXRhQ$EvC%5Sl}yT
z_@yn)IG)|u3f$V@u$6`5w|Cq)f4d5d;Jx@7ald5waH6C1>mOL=B#vc1%2)Io15>C=jeq6`
z$vg-5;^U%!c)dhPJ`E4SCM5{Qx^R!-vSuA6?$Xv;Hl)~gDRl|`?00!{VNXvHMPV5n
z{_Dyd94j(z-Kvh1WRpSv2A)QUurHPlCH6O(3Xh}FL#L)ilE4?n!F}~L(*M$s3Ek{e
z2a8DgKD$a*ZqH!mS4Ir}g|L{JA9&<-hhiV*J)ezk9Q$U$FS2PW-))~JjuL;7VdL$y
kHW8P3`Gh6Z>ka$t6<~g_ac%7yPUg?Tlr#1Je>hJ47iUb{;{X5v
literal 0
HcmV?d00001
diff --git a/pics/8587132a-021d-4f1f-a8ec-5a9daa7157a7.png b/pics/8587132a-021d-4f1f-a8ec-5a9daa7157a7.png
new file mode 100644
index 0000000000000000000000000000000000000000..f77ff34664c119d2714e1306b4c544f2c6384060
GIT binary patch
literal 6144
zcmeHLdsLI>8UN^^18-ckXWRlAg3}eN2(-w}6j2~JVWpiJ69OtoVFGfIpdpE+UC~0g
zL<5}{GEbmjsmYW8!UH@-7;G>k@UeGr##VcDxN;=VmJ%JnOzTsq3VDf0_N7?seW3NtK_Z
zJ8!8OyX)%|zO-J0y<3R-N;FM8F4t;rV;8XNrb|x`+3kEbH4gwSyBGlQMWr8bcC&ab
z@aMaoZvfi@UQ^fEEr#d8;A!7p(=KUivRvOStIdD&ZyWjk*|t97>|N3$AKM1<-+8yp
zR~YBx>V~O6J4X3@S(|&^*;jhV-8AX3_9p`|JK7*2AZIx;M~-rO)L1WEAnhZ3hIR_iLY5G)Oa
zDXuttwv|?ztr?-gxf)1_nk!U2heZOT4AWDf({eN-JdgHv`8H0*jm(oauNJh=iAU|31`6(iR6eV8eBh2q)dVnl^E7ngwqUNw&O?VmFM-K<8wY
z<*C_~trZ!`IWhloR_<7T0Hedl(v}_K*`sb4L9K|fN~%uO=byS+*(!_8!>p3Cj)BhZ
z-*Lx^8!eBYk({z!oE^p&jJ;xL=VSql9d-Hbp8qH2F~(C##veTSbi8N9J_6SBC#+}ZQYR6&H^=z`nn
zWqdz$1bR;$Tu`u6FVN1=tE-q&|D318LTSRF*_d1Gd@)x}4i}|3vPx5`PI=JYZp$qRp&<>=EjEnVPIP|Cl
zVSc2U?T1oFXyFBVl)e#}n012Ww-wh0UW*EZy7Yh0qi`sgFK?nFXDN6kiu4z~T+;)e
z{OD>aY6?=bs=*Mi@}NpH$m)W`aWqyG5(7OZEE~s3AYSJw!!JDPRkC>Wy3ao_0}SnW
zvh+pqjQBo{&H5H)5Tj_s1e`(?0jWzyS6+;>Bb9yxkpm&QYc5B1m84~jD5OTs6zZQN
z?pN0g)#f*u9*UCKz7`Wg`=R!R#&D_bZkT$X4RkZM8SJG9H%xYVa!S>TZHqpQh3U!H
zYx7TqtZefWU!=|x!vrCnRIE0vi&5HKT(1;Kic&>-&EdnVkDc@<_FAua*QYVOev
z$}>UTu~OTn3+muoAoT)!V(Q_wU5t)bS7r{APwgCw#~CSMgeN^pRUkVPgrD^xeN6%5
zq4x;ssyE8!^JX5pVgz?PyAfs~;M-f`Yz3F>(d>Aor~!LgLKXXkZigOo$URF5Qz6C%
zxe0#^GG$AXIc^VBx9T+t1(v9l2&sOUcx0%Q*$z_abh?m-B$bx#FYl+Z9YOfCf-W3m
z5|>nX-3SdTvYfw3BNqyUU4@yr7tbG*lMZP&*OT6K}vAkj=3I^)WBpebGnS2B{(
zlt$_9fli7qdL+Lte+!!Om3X^2j^cZem&B#|qAyjoRr;YRL7tgz7>aLJ=uiN|7tJqv
zO%pF8O(J6Xo!66Eev0=oc5^PuZ}YNsR>1`{Va9_NJ9t^WU2PKXqO7Kav0c
E0BmZ1HUIzs
literal 0
HcmV?d00001