2021年1月28日

摘要: STL- 常用算法 概述: 算法主要是由头文件<algorithm> <functional> <numeric>组成。 <algorithm>是所有STL头文件中最大的一个,范围涉及到比较、 交换、查找、遍历操作、复制、修改等等 <numeric>体积很小,只包括几个在序列上面进行简单数学运算的模 阅读全文
posted @ 2021-01-28 22:36 Sna1lGo 阅读(106) 评论(0) 推荐(0) 编辑
 
摘要: STL——函数对象(仿函数) 函数对象 概念: 重载函数调用操作符的类,其对象常称为函数对象 函数对象使用重载的()时,行为类似函数调用,所以也叫仿函数 本质 函数对象的本质是一个类,而不是一个函数 函数对象的使用 特点: 函数对象在使用的时候,可以像普通函数一样调用,可以有参数,可以有返回值 函数 阅读全文
posted @ 2021-01-28 22:10 Sna1lGo 阅读(71) 评论(0) 推荐(0) 编辑
 
摘要: STL——案例-员工分组 公司今天招聘了10个员工(ABCDEFGHIJ),10名员工进入公司之后,需要指派员工在那个部门工作员工信息有: 姓名 工资组成;部门分为:策划、美术、研发随机给10名员工分配部门和工资通过multimap进行信息的插入 key(部门编号) value(员工)分部门显示员工 阅读全文
posted @ 2021-01-28 17:51 Sna1lGo 阅读(70) 评论(0) 推荐(0) 编辑
 
摘要: STL——map/multimap 简介: map中所有元素都是pair pair中第一个元素为key(键值),起到索引作用,第二个元素为value(实值) 所有元素都会根据元素的键值自动排序 本质: map/multimap属于关联式容器,底层结构是用二叉树实现。 优点: 可以根据key值快速找到 阅读全文
posted @ 2021-01-28 17:17 Sna1lGo 阅读(52) 评论(0) 推荐(0) 编辑
 
摘要: STL——set/multiset容器 基本概念 所有元素都会在插入时自动被排序 本质 set/multiset属于关联式容器,底层是由二叉树实现 set和multiset的区别 set不允许容器有重复元素 multiset允许容器有重复的元素 set构造和复制 构造 set<T> st; 默认构造 阅读全文
posted @ 2021-01-28 16:18 Sna1lGo 阅读(63) 评论(0) 推荐(0) 编辑
 
摘要: 数据结构-树-哈夫曼树 概念 路径和路径长度 在一棵树中,从一个节点往下可以达到的孩子或孙子节点之间的通过,称为路径。通路中分支的数目称为路径长度。若规定根节点的层数为1,则从根节点到第L层节点的路径长度为L-1 节点的权及带权路径长度 若将树中节点赋给一个有着某种意义的数值,则这个数值称为该结点的 阅读全文
posted @ 2021-01-28 14:49 Sna1lGo 阅读(111) 评论(0) 推荐(0) 编辑
 
摘要: 数据结构-二叉树编程 求二叉树叶子数量 如果节点的左子树与右子树相同且为NULL int num=0;void GetLeavesNum(BN* a){ if (a == NULL) return; if (a->lchild == NULL && a->rchild == NULL) { num+ 阅读全文
posted @ 2021-01-28 02:09 Sna1lGo 阅读(118) 评论(0) 推荐(0) 编辑
 
摘要: 数据结构-二叉树 二叉树基本性质 1 二叉树的基本性质 1.1 性质1: 在二叉树的第i层上至多有2^(i-1)个结点(i>0) 1.2 性质2: 深度为k的二叉树至多有2^k - 1个结点(k>0) 1.3 性质3: 对于任何一棵二叉树,若度为2的结点数有n2个,则叶子数(n0)必定为n2+1 ( 阅读全文
posted @ 2021-01-28 00:38 Sna1lGo 阅读(108) 评论(0) 推荐(0) 编辑