
大话数据结构_赫夫曼树与应用
权 树结点间的边相关的数叫权。 路径长度 从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称做路径长度。 树的路径长度就是从根到每一结点的路径长度之和。 考虑到带权的结点: 结点的带权的路径长度为从该结点到树根之间的路径长度与结点上权的乘积。 树的带权...
权 树结点间的边相关的数叫权。 路径长度 从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称做路径长度。 树的路径长度就是从根到每一结点的路径长度之和。 考虑到带权的结点: 结点的带权的路径长度为从该结点到树根之间的路径长度与结点上权的乘积。 树的带权...
概述 json是JS对象表示语法的子集。 Json语法 规则 大括号保存对象 中括号保存数组 值 数字 整数 浮点数 字符串 双引号括起来 逻辑值 true false 数组 对象 null rapidjson 概述 把include文件夹拷贝到项目。 在工程中引入。 关于doc...
树转二叉树 加线 去线 层序调整(第一个孩子是二叉树的左节点,兄弟转化过来的孩子是二叉树的右节点) 森林转为二叉树 把每个树转换为二叉树 第一棵二叉树不动,从第二棵二叉树开始,依次把后一棵二叉树的根结点作为前一棵二叉树的根结点的右孩子,用线连接起来。 当所有的二叉树连接起来后就得...
命名空间与模块 将类型及其成员函数接口置于同一命令空间中 如果要将非成员函数(特别是操作符和辅助函数)设计成类X的接口的一部分,那么就必须在与X相同的命名空间中定义它们,以便正确调用。 应该将类型和函数分别置于不同的命名空间,除非有意让它们一起工作 不要在头文件或者include...
组织与策略 不拘泥小节 大括号位置 空格和制表符 匈牙利记法 单入口,单出口 高警告级别 第三方头文件 未使用的函数参数 定义了从未使用过的变量 变量使用前可能未经初始化 遗漏了return语句 有符号数、无符号数不匹配 自动构建系统 增量构建 完全构建 版本控制系统 版本空值系...
新的改变 nullptr 在C++11中,nullptr是一个所谓“指针空值类型”的常量。 nullptr类型数据所占用的内存空间大小和void*是相同的。 nullptr和(void*)0 前者是一个编译时期常量 后者只是一个强制转换表达式,返回的也是一个void*指针类型。 ...
常用特殊 静态类型动态类型 主要区别在于对类型进行检查的时间点。 对于所谓的静态类型,类型检查主要发生在编译阶段。 对于动态类型,类型检查主要发生在运行阶段(和类型推导相关)。 auto auto声明变量的类型必须由编译器在编译时期推导而得。 auto声明的变量必须被初始化,以使...
使用 CRegexpT 正则表达式,'\0'结束的。 表达匹配模式。 CRegexpT::Compile 正则表达式,'\0'结束的。 表达匹配模式。 CRegexpT::MatchExact 精确匹配。 tstring字符串,使用 \0 作为结束标志。 返回匹配结果 Match...
兼容性 预定义宏 __STDC_HOSTED__ 如果编译器的目标系统环境中包含完整的C库,那么这个宏就定义为1,否则值为0. __STDC__ C编译器通常用这个宏的值来表示编译器的实现是否与C标准一致。 C++11标准中这个宏是否定义以及定义成什么值由编译器决定。 __STD...
函数与回调 ref 包装对象的引用,在传递参数时消除对象拷贝的代价,或者将不可拷贝的对象变为可以拷贝。 reference_wrapper boost::cref boost::ref unwrap_ref bind 适配任意的可调用对象,如函数指针、函数引用、成员函数指针、函数...