自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Zavier的博客

Zavier的车间QuQ

  • 博客(28)
  • 收藏
  • 关注

原创 2021-08-13

C++设计模式:https://zhuanlan.zhihu.com/p/94877789

2021-08-13 16:50:21 73

原创 深入理解计算机操作系统——第二章

信息的表示和处理2.1 信息存储 2.1.3 寻址和字节顺序 (大小端和typedef实现)VS中C语言使用哪种寻址 2.1.9 c语言中移位运算(移位过大时)2.2 整数表示 2.2.2 无符号数编码 2.2.3 补码编码 (原码和反码的表示【0】) 2.2.5 c语言中的有符号和无符号数(声明) 2.2.7 截断数字2.4 浮点数 ...

2021-08-03 09:39:20 110

原创 深入理解计算机操作系统——第一章

1.2程序编译链接具体步骤1.4 处理器读并解释存储在内存中的指令 1.4.1 硬件组成 1.4.2 运行hello程序1.6高速缓存和存储层次结构1.7 进程、线程和虚拟内存技术及文件1.8 系统间的网络通信1.9 计算机系统中抽象重要性...

2021-08-03 09:09:30 97

原创 C++ Primer导读(一) 顺序容器

一、顺序容器1.1 顺序容器概述 顺序容器(sequential container)为程序员提供了控制元素存储和访问顺序的能力。这种顺序不依赖元素的值。 容器类型: vector、deque、list、forwart_list、array、string,具体特性如下: forward_list为了最大程度上达到手写链表的性能,不支持size操作。 通常,使用vector是最好的...

2021-08-03 08:59:01 77

原创 操作系统专栏

1. 虚拟内存技术

2021-07-22 15:09:51 67

原创 虚拟内存技术

虚拟内存是计算机系统内存管理的一种技术。它使得应用程序认为它拥有连续可用的内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。现代所有用于一般应用的操作系统都对普通的应用程序使用虚拟内存技术,老一些的操作系统,如DOS和1980年代的Windows,或者那些1960年代的大型机,一般都没有虚拟内存的功能 ...

2021-07-22 15:04:21 448

原创 TCP/IP相关

参考链接:https://blog.csdn.net/weixin_39525307/article/details/111363312参考链接:https://juejin.im/post/68449034905950617671、 数据封装下图清楚地表示了TCP/IP协议中每个层的作用,而TCP/IP协议通信的过程其实就对应着数据入栈与出栈的过程。入栈的过程,数据发送方每层不断地封装首部与尾部,添加一些传输的信息,确保能传输到目的地。出栈的过程,数据接收方每层不断地拆除首部...

2021-07-21 11:25:36 70

原创 TCP三次握手

参考博客:https://www.cnblogs.com/bj-mr-li/p/11106390.htmlhttps://blog.csdn.net/Shuffle_Ts/article/details/93778635懒得搜图了,用的链接里面的图。理解TCP三次握手,我们可以从包的格式出发。第二行:序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派...

2021-07-20 15:53:23 59

原创 戳气球问题

原题链接:https://leetcode-cn.com/problems/burst-balloons/问题描述有 n 个气球,编号为0 到 n - 1,每个气球上都标有一个数字,这些数字存在数组nums中。现在要求你戳破所有的气球。戳破第 i 个气球,你可以获得nums[i - 1] * nums[i] * nums[i + 1] 枚硬币。这里的 i - 1 和 i + 1 代表和i相邻的两个气球的序号。如果 i - 1或 i + 1 超出了数组的边界...

2021-07-20 14:48:37 86

原创 快速排序

基本思想: 以某个记录的关键字为比较的基准(划分元),将整个序列划分为两组,左边记录的关键字小于等于划分元,右边的关键字大于等于划分元,而划分元所属记录的位置就是最终有序序列中的位置。对左右部分数据,再各自选取一个记录的关键字作为划分元,将两个子序列划分成更小的子序列,这样一直进行下去,最终将整个序列排列成有序序列。对划分元的选择,最简单的办法就是选取当前序列的第一个关键字为划分元。...

2021-07-19 10:01:08 88

原创 STL知识积累

一、STL介绍Standard Template Library,标准模板库,是C++的标准库之一,一套基于模板的容器类库,还包括许多常用的算法,提高了程序开发效率和复用性。STL包含6大部件:容器、迭代器、算法、仿函数、适配器和空间配置器。容器:容纳一组元素的对象。 迭代器:提供一种访问容器中每个元素的方法。 函数对象:一个行为类似函数的对象,调用它就像调用函数一样。 算法:包括查找算法、排序算法等等。 适配器:用来修饰容器等,比如queue和stack,底层借助了dequ...

2021-07-16 08:33:57 50

原创 红黑树理解

参考链接:什么是红黑树-知乎1. 红黑树来源红黑树是基于二叉查找树二叉查找树(BST)具备什么特性呢?1.左子树上所有结点的值均小于或等于它的根结点的值。2.右子树上所有结点的值均大于或等于它的根结点的值。3.左、右子树也分别为二叉排序树。2. 红黑树的特性:1.结点是红色或黑色。2.根结点是黑色。3.每个叶子结点都是黑色的空结点(NIL结点)。4 每个红色结点的两个子结点都是黑色。(从每个叶子到根的所有路径上不能有两...

2021-07-15 14:10:55 169

原创 矩阵连乘问题

问题描述:计算n个矩阵的乘积: M = M1 * M2 * M3 * .............Mn在乘积的过程中,由于结合律,不同的顺序下所需要的算术运算次数有很大影响。如何找到乘法次数最少的方法,并且输出方案。 这是一类标准的动态规划问题,我们可以通过构造dp自底向上地得到最终答案。假设有4个矩阵,mxn分别为35*40, 40*20, 20*10, 10*15。int main...

2021-07-15 11:16:16 240

原创 烤面筋真好吃

C++相关:1. C++11特性,lambta使用【底层实现】2. stl容器相关 有哪些?(vector内存分配)3. 如何检测内存泄漏(如果是你怎么实现)4. 纯虚函数的定义5. 智能指针、野指针Webrtc相关:1. webrtc中 I帧 是什么策略2. 你觉得最有成就感的事情是什么?操作系统:线程种类锁...

2021-07-08 17:05:22 95

原创 直接法-穷举、递推和迭代

在算法设计中,我们会遇到一些可以用直观的思维解决的问题。下面我们介绍三种基本的方法:穷举、递推和迭代。1. 穷举法 穷举法是一种最简单的算法那设计策略,常常是直接基于问题的描述和所涉及的概念。一般来说,穷举法是最容易应用的,但是同时可能也是复杂度最高的算法。 比如说问题:求解已知平面内距离最近的两点。可以通过穷举遍历所有可能的解找到答案int main(){ int n = 100; int x[100] = {}; int y[10...

2021-07-06 10:13:52 1232

原创 回溯法-八皇后问题

问题描述:在8x8的国际象棋棋盘上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列、同一对角线。问:有多少种解法?算法思路: 考虑穷举,则所有棋子公有8的8次方的解集,考虑到冲突,可以在每一行摆放一个棋子,复杂度下降到8! a. 摆放第i行棋子时,分别检测列冲突、对角线冲突【2个对角线】,直到找到一个不冲突的位置进行摆放。 b. 递归去放i+1行的棋子 c. 如果已经是第8行棋子,放置成功后...

2021-07-03 16:21:27 173

原创 回溯法-子集和数

问题描述:已知N+1个正数,和M

2021-06-30 15:02:42 1166

原创 贪心算法-基础背包问题

#include<iostream>#include<cmath>#include<vector>#include <algorithm>#include <map>#include <algorithm>#include <unordered_map>#include <stack>#include <time.h> #include <vector>#includ.

2021-06-22 15:24:19 115

原创 C++学习总结(三)const修饰符

本小节主要介绍const修饰符在函数声明以及作为形参和变量等地方的具体含义。参考链接:https://blog.csdn.net/left_la/article/details/7441159https://blog.csdn.net/m0_37570217/article/details/1005410040. 什么是const? C++中,我们通过#define 和 const关键字来定义常量,即常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更..

2021-05-18 15:25:50 103

原创 C++学习总结(二)多态

这部分主要想介绍一下父类与子类的关系,具体包括构建、析构、继承、编译相关内容。1. 编译。【待整理】假设A是库,A中有reset接口,reset接口使用了其他类的对象【这个对象会根据类型返回不同的指针】并对其去初始化,现在在2个不同的头文件【hx,hy】中包含了A,如果hy中重构了A的构造等函数,却没有指定reset接口中的对象类型,则编译的时候会提示,在hx和hy中对同一文件重定义。...

2021-05-13 10:46:01 74

原创 C++学习总结(一)虚函数

前言:工作了小半年了,准备开个系列的总结笔记,主要从虚函数、const、回调函数、类的构建与析构特点、结构体中指针构造等方面出发,慢慢总结进步~虚函数 先贴上自己学习理解参考的链接ref1:https://blog.csdn.net/haoel/article/details/1948051虚函数ref2: https://blog.csdn.net/weixin_43329614/article/details/89103574虚函数ref3:https://blog...

2021-04-14 17:25:53 110

原创 wireshark学习笔记

WireShark使用指南1、文件获取.pcap 是wireshark的打开类型。 tcpdump -i eth0 -w test.pcap我们可以在服务器端通过这种方式来输出.pcap文件 也可以直接打开对应的.pcap格式文件2、wireshark使用指南2.1 UTP包转RTP分析 -> 解码为 -> “+” -> 当前 ->选中 RTP...

2021-03-08 15:50:14 56

原创 VS小番茄插件常用快捷键

快速打开文件 Alt + Shift + O快速查找引用 Alt + Shift + F快速重命名Alt + Shift + R (这个可能会经常用)快速跳到定义 Alt + G光标回到上一处 Ctrl + -光标回到下一处 Ctrl + Shift + -设置/取消书签 Ctrl + F2跳转到下一个书签 F2跳转到上一个书签 Shift + F2全局文本搜索 Ctrl + Shift + F...

2021-03-08 15:45:51 1600

原创 位运算:与、异或、移位

1. 原题分析刷leetcode的时候,一直会遇到不用加法乘法去实现2个数的加法乘法运算,这类题目基本上就是利用位运算没跑了,现在总结一下,题目:剑指offer65. 不用加减乘除法做加法https://leetcode-cn.com/problems/bu-yong-jia-jian-cheng-chu-zuo-jia-fa-lcof/分析:设a=7,b=5;即a=111,b=101,引入无进位和进位的概率 无进位和 进位 0 0 0 0

2020-12-28 12:56:05 212

原创 map和unordered差别+赋值和删除

map具体分为普通Map和Unordered_Map,二者差异参考以下链接,后续再讨论红黑树相关【太难了 QAQ...】map:有序的,占用内存小,底层是红黑数的赋值插入unordered_map: 无序,速度快,底层是哈希表的赋值插入下面为LeetCode上剑指offer的56题I,主要涉及unordered的插入和删除操作。#include<iostream>#include<cmath>#include<vector>#include &

2020-12-25 15:37:02 507 1

原创 遍历二叉树

二叉树的遍历  分为三种情况,分别为前序、中序和后序。实际场景中,我们往往需要使用固定格式的遍历方法,但是需要对取得值进行操作。注意结果需要写在私有变量或者全局变量,不要被覆盖。前序遍历  【根 左 右】 * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * };

2020-09-14 15:30:58 73

原创 RFC3550学习记录

RFC3550学习记录参考链接: 1. TCP、UDP、RTP详解 2. RFC3550英文原文本文主要从OSI和 TCP/IP模型入手,一步一步理解RTP在模型中的位置和功能一、相关背景介绍OSI层次功能TCP/IP协议族二、RFC3550学习2.1 RTP和RTCP RTP标准定义了两个子协议,RTP和RTCP:数据传输协议RTP:用于实时传输数据。该协议提供的信息包括:时间戳(用于同步)、序列号(用于丢包和重排序检测)、以及负载格式(用于说明数据

2020-09-03 10:36:32 1093

原创 环形矩阵创建

创建环形矩阵输入:一个整数n,1<=n<=20;输出:从右上角开始的蜗牛环形矩阵;例入:输入:n=2输出:4 13 2思路:从右上角起始位置开始按照下左上右的递增赋值,改变起始位置,直到当前起始位置的左下角以及被赋值,跳出循环初始化注意:n=1的情况/*********************************** author :Jun ** create date:2020.8.25** modifier :** modify time:*

2020-08-25 11:59:15 701

空空如也

空空如也

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

TA关注的人

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