自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 计网 物理层 奈氏准则 信噪比 复用与分用

基本概念物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的作用是要尽可能地屏蔽掉不同传输媒体和通信手段的差异。主要任务确定与传输媒体的接口的一些特性,即:机械特性 指明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。电气特性 指明在接口电缆的各条线上出现的电压的范围。功能特性 指明某条线上出现的某一电平的电压表示何种意义。过程特性 指明对于不同功能的各种可能事件的出现顺序。数据在计算机中多采用并行传输,但数据在通信线路上的传输

2021-06-27 13:53:34 243

原创 计网 概述重点

互联网的组成从互联网的工作方式上看,可以划分为以下的两大块:(1) 边缘部分 由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。(2) 核心部分 由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。计算机交换数据的方式(一)、电路交换电路交换必定是面向连接的。电路交换的三个阶段:建立连接通信释放连接(二)、报文交换(三)、分组交换每一个数据段前面添加上首部构成分组 分组交换网以“分组”作

2021-06-24 16:09:30 227

原创 STL常用算法

常用遍历算法for_eachfunc是普通函数就不用加() 仿函数要有()print01为普通函数 print02()为仿函数transform直接创造出来的目标容器需要有空间才能进行搬运对目标容器创建空间查找算法find通过判断是否等于end();来判断是否找到元素若要查找自定义类型 则需要重载==find_if与find相似 func变成了pred函数或者谓词 结果返回一个迭代器自定义类型 则要去重载 pred或谓词位置的()adjacent_findbi

2020-08-26 15:53:12 238

原创 map和multimap

map的基本概念构造和赋值大小和交换插入和删除查找和统计参考自:https://www.bilibili.com/video/av41559729?p=234

2020-08-25 15:16:54 168

原创 堆排序

运用前面学习的最小堆和最大堆 实现堆排序算法2参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254070&cid=1254945263

2020-08-23 09:49:15 152 1

原创 希尔排序

原始算法与插入排序差不多 只是原本的i变成了D 外部套了个希尔增量序列之所以称为原始 是因为这个希尔增量序列不够高级 有可能增量不互质 则小增量不起作用 如(8 4 2)更多的增量参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254069&sm=1...

2020-08-23 09:32:28 66

原创 简单排序

冒泡排序P为末尾元素位置 N为元素个数 因为数组从0开始 所以P=N-1每次进行小循环是两两比较比较次数为P-1每次大循环都确定了一个P的数值 并且每次大循环P在减小 因此叫做冒泡排序设置标志flag 优化了算法 当在一次大循环没有交换一次数时 循环结束冒泡排序的优点: 代码简单 两个相邻的数比较在链表中也可以使用 具有稳定性(排序前后两个相同的数前后位置不变)插入排序一开始0号位置有数组 大循环是进行插入一个数 每差入一个数进行一次小循环小循环是为了找到插入数的位置最后在位置上插入

2020-08-22 11:52:56 83

原创 set和multiset容器的基本语法 C++

概念构造和赋值大小和交换插入和删除查找和统计区别参考自:https://www.bilibili.com/video/BV1et411b73Z?p=226

2020-08-13 13:00:05 80

原创 list容器的基本语法 C++

概念构造函数赋值和交换大小操作插入和删除数据存储因为是链式结构 不能随机访问所以没有 at 和【】的存储方式反转和排序参考自:https://www.bilibili.com/video/BV1et411b73Z?p=223

2020-08-13 12:53:55 142

原创 stack和queue的基本语法 C++

stack概念 stack常用接口queue的概念常用接口参考自:https://www.bilibili.com/video/BV1et411b73Z?p=214

2020-08-13 12:46:30 127

原创 deque的基本语法 C++

基本概念赋值操作大小操作插入和删除数据存取排序参考自:https://www.bilibili.com/video/BV1et411b73Z?p=209

2020-08-13 12:42:28 133

原创 vector的基本语法 C++

基本概念赋值容量和大小插入和删除数据存储数据交换数据交换可以用于缩小容量预留空间预留空间 减少动态扩容的次数参考自:https://www.bilibili.com/video/BV1et411b73Z?p=203

2020-08-12 09:24:31 228

原创 string函数基本语法 C++

string 函数的构造string 函数的赋值string 函数的拼接string 函数的查找和替换string 函数的比较string 函数的存取string函数的插入删除string 函数取子串参考自:https://www.bilibili.com/video/BV1et411b73Z?p=196...

2020-08-11 10:36:25 93

原创 模板 C++

C++的另一种编程思想为泛型编程 主要技术就是模板C++提供两种模板机制函数模板和类模板函数模板作用:建立一个通用函数 其函数返回值和参数类型可以不具体指定 用一个虚拟类型代替语法:template<typename T>函数声明或定义例如:两种方式使用函数模板1.自动类型推导不写出虚拟类型 系统自动识别 必须推导出一致的类型 才可以使用2显示指定类型int a=10,b=20;1.自动类型推导mySwap(a,b);//2.显示指定类型mySwap<

2020-08-07 10:53:51 85

原创 集合及运算

参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254052&cid=1254945156

2020-07-21 14:29:21 81

原创 运用堆实现哈夫曼树

哈夫曼树的定义哈夫曼树的构建就是把两个最小的权值放左右子树上 产生父结点为他们的和 再将新的父结点和剩下数的比较 再找出两个最小的权值 如此循环用最小堆可以找到两个最小的权值 并将新生成的权值加入到剩下的数中排序 为下次再取两个最小值做准备哈夫曼树的特征参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254051&cid=125494

2020-07-21 11:01:52 530

原创 堆的基本操作

最大堆的操作堆看做是完全二叉树所以用数组存储简单其中(MaxSize+1)是因为 堆是从1号开始 0为哨兵位最大堆的插入将插入元素放到数组的最后 然后与其父结点进行大小比较 若子比父大则交换数值并且循环 直到父结点都大于儿子结点父结点的位置规律为i/2 i是左右结点的位置最大堆的删除取数组最后一个元素 放到删除元素的位置上 向下比较 若子比父大则交换 向下循环直到父都比子大参考自:https://www.icourse163.org/learn/ZJU-93001?tid=14597

2020-07-21 10:07:37 129

原创 平衡二叉树

定义平衡二叉树的调整1.RR旋转注意:无论是增加在BR的左或右儿子上 都是发生RR旋转2.LL旋转注意:当出现两个或多个不平衡点先处理下面的不平衡点 下面的不平衡点平衡了 上面的也会平衡3.LR旋转4.LR旋转参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254047&sm=1...

2020-07-20 15:50:16 94

原创 二叉搜索树

二叉搜索树的定义查找由于非递归函数执行效率高 可以将尾递归改为迭代函数查找最大值和最小值代码如下二叉搜索树的插入关键是找到元素插入的对应位置 可以采用Find类似的方法二叉搜索树的删除要考虑三种情况;要删除的是叶结点 直接删除 并修改其父结点的指针置为NULL要删除的有一个孩子其父结点要指向删除结点的孩子结点要删除的有两个孩子用另外结点代替被删除结点 右子树的最小元素或者左子树最大元素 因为最大和最小元素一定在根的最右边或最左边 其一定没有两个孩子参考自:https:

2020-07-20 11:41:11 95

原创 二叉树遍历的应用

输出二叉树的叶子结点在三种遍历选择一种 加上一个if判断其有无左右儿子 没有就是叶子结点 则输出求二叉树的高度运用后序遍历 每一次比较都是比较根节点的左右树的大小 从下到上 最终比较树根的左右树的大小 再加一就是树的高度。由两种遍历确定二叉树两种遍历其中一种必定是中序遍历才可以有唯一确定的树类似的 后序和中序遍历来确定一颗二叉树1.根据后序遍历的最后一个结点确定 根结点2根据根结点在中序序列中分割出左右两个子序列3.对左子树和右子树分别递归使用相同的方法继续分解参考自:https:

2020-07-20 11:01:49 278

原创 二叉树的遍历

二叉树的遍历1.先序遍历2.中序遍历3.后序遍历总结三次不同的遍历 其实本质都是相同的 所以代码也差不多 在遍历过程中都是同一条路线 经过同一个点三次 在不同的时间输出点 形成了三次不同的遍历顺序。参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254044&sm=1...

2020-07-19 19:55:16 59

原创 二叉树及存储结构

二叉树的几个重要性质存储结构1.顺序存储(数组存储)一般的二叉树用数组存储 会有空间浪费 所以一般用链式存储2.链式存储参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254043&sm=1...

2020-07-19 17:09:01 80

原创 树的基本术语

树的基本术语参考自:https://www.icourse163.org/learn/ZJU-93001?tid=1459700443#/learn/content?type=detail&id=1235254042&cid=1254945097

2020-07-19 11:11:13 110

原创 二分查找及其启示

二分查找条件:元素在数组中有序排列(从小到大或者从大到小) 并且是连续存放的数组建立left right mid;使得left开始指向数组最左边 right指向最右边 mid指向中间 既(left+right)/2通过比较不断更改这三个数值找到的情况 mid对应的值等于所要找的K的大小找不到的情况 当left>right二分查找 通过在有序的数组每次从中间分开 让我们联想到了判定树判定树的规律参考自:https://www.icourse163.org/learn/

2020-07-19 10:58:44 76

原创 数组静态查找(哨兵法)

查找1.静态查找:集合中记录是固定的 没有插入和删除 只有查找2.动态查找:集合中记录是动态变化的除了查找 还肯发生插入和删除静态查找方法一:顺序查找(最常用数组表示)【时间复杂度为O(n)】 - 运用哨兵查找 数组中的元素从一开始存储 - 建立结构 结构中有将进行查找的数组和数组长度 - 1.将要查找的元素K插入哨兵位置 既数组的0号位置 - 2.通过for循环一定会找到K元素 返回下标- 无哨兵查找- 使得每次要多一次判断 查找的当前位置是否超出边界参考自:https:

2020-07-19 10:17:59 1095

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除