Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wushizhenking
CS-Notes
提交
762c3c69
C
CS-Notes
项目概览
wushizhenking
/
CS-Notes
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
CS-Notes
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
762c3c69
编写于
8月 23, 2018
作者:
C
CyC2018
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
auto commit
上级
8b330007
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
8 addition
and
8 deletion
+8
-8
notes/Redis.md
notes/Redis.md
+1
-1
notes/剑指 offer 题解.md
notes/剑指 offer 题解.md
+1
-1
notes/构建工具.md
notes/构建工具.md
+1
-1
notes/算法.md
notes/算法.md
+5
-5
未找到文件。
notes/Redis.md
浏览文件 @
762c3c69
...
@@ -549,7 +549,7 @@ def main():
...
@@ -549,7 +549,7 @@ def main():
# 十二、Sentinel
# 十二、Sentinel
Sentinel(哨兵)可以监听
主
服务器,并在主服务器进入下线状态时,自动从从服务器中选举出新的主服务器。
Sentinel(哨兵)可以监听
集群中的
服务器,并在主服务器进入下线状态时,自动从从服务器中选举出新的主服务器。
# 十三、分片
# 十三、分片
...
...
notes/剑指 offer 题解.md
浏览文件 @
762c3c69
...
@@ -1082,7 +1082,7 @@ false
...
@@ -1082,7 +1082,7 @@ false
```
java
```
java
public
boolean
isNumeric
(
char
[]
str
)
{
public
boolean
isNumeric
(
char
[]
str
)
{
if
(
str
==
null
)
if
(
str
==
null
||
str
.
length
==
0
)
return
false
;
return
false
;
return
new
String
(
str
).
matches
(
"[+-]?\\d*(\\.\\d+)?([eE][+-]?\\d+)?"
);
return
new
String
(
str
).
matches
(
"[+-]?\\d*(\\.\\d+)?([eE][+-]?\\d+)?"
);
}
}
...
...
notes/构建工具.md
浏览文件 @
762c3c69
...
@@ -15,7 +15,7 @@
...
@@ -15,7 +15,7 @@
## 运行单元测试
## 运行单元测试
不再需要在项目代码中添加测试代码,从而污染项目代码。
不再需要在项目代码中添加测试代码,从而
避免了
污染项目代码。
## 将源代码转化为可执行文件
## 将源代码转化为可执行文件
...
...
notes/算法.md
浏览文件 @
762c3c69
...
@@ -23,7 +23,7 @@
...
@@ -23,7 +23,7 @@
*
[
五、栈和队列
](
#五栈和队列
)
*
[
五、栈和队列
](
#五栈和队列
)
*
[
栈
](
#栈
)
*
[
栈
](
#栈
)
*
[
队列
](
#队列
)
*
[
队列
](
#队列
)
*
[
六、
查找
](
#六查找
)
*
[
六、
符号表
](
#六符号表
)
*
[
初级实现
](
#初级实现
)
*
[
初级实现
](
#初级实现
)
*
[
二叉查找树
](
#二叉查找树
)
*
[
二叉查找树
](
#二叉查找树
)
*
[
2-3 查找树
](
#2-3-查找树
)
*
[
2-3 查找树
](
#2-3-查找树
)
...
@@ -1290,7 +1290,7 @@ public class ListQueue<Item> implements MyQueue<Item> {
...
@@ -1290,7 +1290,7 @@ public class ListQueue<Item> implements MyQueue<Item> {
# 六、
查找
# 六、
符号表
符号表(Symbol Table)是一种存储键值对的数据结构,可以支持快速查找操作。
符号表(Symbol Table)是一种存储键值对的数据结构,可以支持快速查找操作。
...
@@ -1411,9 +1411,9 @@ public class ListUnorderedST<Key, Value> implements UnorderedST<Key, Value> {
...
@@ -1411,9 +1411,9 @@ public class ListUnorderedST<Key, Value> implements UnorderedST<Key, Value> {
使用一对平行数组,一个存储键一个存储值。
使用一对平行数组,一个存储键一个存储值。
rank() 方法至关重要,当键在表中时,它能够知道该键的位置;当键不在表中时,它也能知道在何处插入新键。
二分查找的
rank() 方法至关重要,当键在表中时,它能够知道该键的位置;当键不在表中时,它也能知道在何处插入新键。
复杂度:
二分查找最多需要 logN+1 次比较,使用二分查找实现的符号表的查找操作所需要的时间最多是对数级别的。但是插入操作需要移动数组元素,是线性级别的。
二分查找最多需要 logN+1 次比较,使用二分查找实现的符号表的查找操作所需要的时间最多是对数级别的。但是插入操作需要移动数组元素,是线性级别的。
```
java
```
java
public
class
BinarySearchOrderedST
<
Key
extends
Comparable
<
Key
>,
Value
>
implements
OrderedST
<
Key
,
Value
>
{
public
class
BinarySearchOrderedST
<
Key
extends
Comparable
<
Key
>,
Value
>
implements
OrderedST
<
Key
,
Value
>
{
...
@@ -2254,7 +2254,7 @@ from H1 to H3
...
@@ -2254,7 +2254,7 @@ from H1 to H3
-
c : 40
-
c : 40
-
d : 80
-
d : 80
可以将每种字符转换成二进制编码,例如将 a 转换为 00,b 转换为 01,c 转换为 10,d 转换为 11。这是最简单的一种编码方式,没有考虑各个字符的权值(出现频率)。而哈夫曼编码
能让
出现频率最高的字符的编码最短,从而保证整体的编码长度最短。
可以将每种字符转换成二进制编码,例如将 a 转换为 00,b 转换为 01,c 转换为 10,d 转换为 11。这是最简单的一种编码方式,没有考虑各个字符的权值(出现频率)。而哈夫曼编码
采用了贪心策略,使
出现频率最高的字符的编码最短,从而保证整体的编码长度最短。
首先生成一颗哈夫曼树,每次生成过程中选取频率最少的两个节点,生成一个新节点作为它们的父节点,并且新节点的频率为两个节点的和。选取频率最少的原因是,生成过程使得先选取的节点在树的最底层,那么需要的编码长度更长,频率更少可以使得总编码长度更少。
首先生成一颗哈夫曼树,每次生成过程中选取频率最少的两个节点,生成一个新节点作为它们的父节点,并且新节点的频率为两个节点的和。选取频率最少的原因是,生成过程使得先选取的节点在树的最底层,那么需要的编码长度更长,频率更少可以使得总编码长度更少。
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录