c++学习
In_the_wind_
欢迎对文章给予建议、指正;如果哪里不够清晰也可以在下方评论,在看到后我会尽力完善。
展开
-
哈夫曼编码系统 C++实现
最近的数据结构大作业…其中涉及到了很多,像一些哈夫曼树的编码、译码,以及树的二叉树形式的存储及恢复。。[基本要求]一个完整的系统应具有以下功能:(1)I:初始化(Initialization)。从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树,并将它存于文件hfmTree中。(2)E:编码(Encoding)。利用已建好的哈夫曼树(如不在内存,则从文件htmTree中读入),...原创 2020-01-04 15:19:16 · 2342 阅读 · 1 评论 -
记一个fstream流的新手可能遇到的错误:会导致打不开文件
ofstream fout(filename, ios::out | ios::trunc);那里是|而不是 ||这个在写这个哈夫曼编译码系统的时候,因为用的不熟导致了一些问题,仔细看了一下才发现…如果写成||,那么是打不开文件的...原创 2020-01-04 15:10:49 · 1156 阅读 · 0 评论 -
C++stringstream按空格分割字符串时二次输入无效的解决方案
最近数据结构大作业有一个要做一个哈夫曼编码系统,里面涉及到树存入文件并恢复的问题。涉及到把字符串按照空格分割的问题,看到一个简便的方法就是通过stringstream流来处理。#include<iostream>#include<string>#include<sstream>#include<vector>using namespace ...原创 2020-01-04 13:03:10 · 1605 阅读 · 1 评论 -
利用new定位运算符进行高效的数组动态增扩
最近在学习数据结构中的hash表,对于其多次冲突时,数组应该增加长度,刚好最近学习的编写Mystring类也要求做到能够动态匹配长度。在开始我做Mystring类时,其实采用的也就是新建一个Mystring对象,给其中的char数组分配合适的长度,然后把原来的Mystring对象一一复制给新的对象,这样应该算是比较通俗易懂,容易想到的。不过在处理hash表时,我遇到了一些其他的问题,然后我猛地想到...原创 2019-04-23 18:50:34 · 437 阅读 · 1 评论