From fb220551d978efebc38afa7418005573fe1bc196 Mon Sep 17 00:00:00 2001 From: HollowMan6 Date: Mon, 27 May 2019 13:07:08 +0800 Subject: [PATCH] Latest push --- README.md | 9 +++++++++ ...237\350\256\241\347\250\213\345\272\217.exe" | Bin 0 -> 49915 bytes 2 files changed, 9 insertions(+) create mode 100644 "\350\213\261\346\226\207\350\257\215\351\242\221\347\273\237\350\256\241\347\250\213\345\272\217.exe" diff --git a/README.md b/README.md index cda7ecc..d799ff3 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,16 @@ # English Word Frequency Statistics Program(英文词频统计程序) + +[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/) +[![GPL Licence](https://badges.frapsoft.com/os/gpl/gpl.svg?v=103)](https://opensource.org/licenses/GPL-3.0/) + English Word Frequency Statistics Program realized by C + 由C语言实现 + ## 原理: + 使用改进的二叉查找树储存单词及其出现的次数(具体见[源代码](英文词频统计程序.c)) + ## 测试: + 使用莎士比亚戏曲进行了测试,这里附上[测试样例](shakespeare.txt)以及[测试结果](count.txt) diff --git "a/\350\213\261\346\226\207\350\257\215\351\242\221\347\273\237\350\256\241\347\250\213\345\272\217.exe" "b/\350\213\261\346\226\207\350\257\215\351\242\221\347\273\237\350\256\241\347\250\213\345\272\217.exe" new file mode 100644 index 0000000000000000000000000000000000000000..a5e15a264dfa070759dd5ce2265f9dff4a03baf0 GIT binary patch literal 49915 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 l!$KD|MYvRiW+4k0g5iBb