统计大文件中字符串出现的次数
2023-06-13 09:16:13 时间
面试场景题
如果有一个大文件,里面全是ip字符串,现在需要统计每个ip出现的次数,并且ip长度都挺长的,怎么在不使用map的情况下怎么统计,或者怎么优化
hashmap
要统计单词的次数,可以直接上map,但是可能字符会占挺多内存,这时候可以考虑字符转化为int之后再进行map,如果是ip字符串可以参考
字典树
struct Trie{
Trie* son[26];
int cnt=0;
Trie(){
for(int i=0;i<26;i++){
son[i]=nullptr;
}
}
};
class WordsFrequency {
private:
Trie *root;
public:
WordsFrequency(vector<string>& book) {
root=new Trie();
Trie* temp;
for(auto item:book){
temp = root;
for(auto ch:item){
int index=ch-'a';
if(!temp->son[index]) temp->son[index]=new Trie();
temp=temp->son[index];
}
++temp->cnt;
}
}
int get(string word) {
Trie* temp=root;
for(auto ch:word){
int index=ch-'a';
if(temp->son[index]) temp=temp->son[index];
else return 0;
}
return temp->cnt;
}
};
相关文章
- pycharm运行文件_pycharm编译成exe
- Python 下载大文件,哪种方式速度更快
- Linux wc命令:统计文件的字节数、字数、行数
- linux 下统计一个文件夹下文件的个数
- SpringMVC 文件上传简单模板
- FastAPI从入门到实战(11)——表单请求与上传文件
- Folder Tidy for mac(Mac桌面文件整理工具)v2.9免激活版
- (七)创建和使用单文件
- Linux_文件查看、操作、统计命令
- 【C 语言】文件操作 ( 配置文件读写 | 写出或更新配置文件 | 函数形参设置 | 确保打开文件成功 | 统计文件大小 )
- linux文件管理命令实例分析【显示、查看、统计等】
- Java统计目录文件下行数的总和,注释行数的总和,空行数总和详解编程语言
- 数利用Linux查看文件字符数(linux统计文件字符)
- Linux命令统计文件行数的技巧(linux命令统计行数)
- Linux文件行数统计:从零开始(linux文件行数统计)
- Linux wc命令:统计指定文件中的字节数、字数、行数
- :Linux系统快速删除旧文件的技巧(linux删除旧文件)
- 在Linux系统中运行Python脚本文件(linux运行py文件)
- Linux统计文件数量的简单方法(linux统计文件的数量)
- Linux 文件的多样性:分类与区别(linux文件的类型)
- Linux下批量重命名文件简易指南(批量重命名linux)
- 如何在Linux中快速统计文件行数(linux文件行数)
- 掌握 Linux 中的 WC 命令,轻松统计文件字数(linux的wc)
- Linux中如何打开PDF文件(linux打开pdf文件)
- Linux文件填充器下载:填充文件而无需麻烦。(linux填充文件下载)
- 如何成功创建mysql.sock文件?一步步教你搭建MySQL服务(创建mysql.sock)
- Linux下文件数统计与分析(linux 文件个数)
- 文件的导入 Oracle中CSV格式文件的快速导入(oracle中csv格式)
- ASP开发中数据库文件调用的捷径
- linuxfind下如何统计一个目录下的文件个数以及代码总行数的命令
- PHP统计目录下的文件总数及代码行数(去除注释及空行)
- 使用python统计文件行数示例分享
- Ruby中实现统计文件行数、单词数和字符数