自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Python Web学习笔记之WebSocket 通信过程与实现

Python Web学习笔记之WebSocket 通信过程与实现 - 时光飞逝,逝者如斯 - 博客园 (cnblogs.com)

2022-03-07 19:44:03 251

转载 【无标题】

1 简介unordered_map是一个将key和value关联起来的容器,它可以高效的根据单个key值查找对应的value。 key值应该是唯一的,key和value的数据类型可以不相同。 unordered_map存储元素时是没有顺序的,只是根据key的哈希值,将元素存在指定位置,所以根据key查找单个value时非常高效,平均可以在常数时间内完成。 unordered_map查询单个key的时候效率比map高,但是要查询某一范围内的key值时比map效率低。 可以使用[]操作符来访问k

2022-02-27 16:04:55 227

原创 ubuntu服务器版本安装图形桌面并且远程连接服务器图形界面

第一种,通过win10自带的xrdp连接​​​​​​(54条消息) Ubuntu Server 20.04 安装桌面(图形界面) 以及 远程桌面_"悸动的青春ゞ's专栏-CSDN博客_ubuntu20server安装图形界面第二种,通过VNC远程连接(54条消息) 腾讯云ubuntu18.04安装图形界面并使用VNCviwer的试错经验_jg10000119的博客-CSDN博客第三种、realvnc(54条消息) Ubuntu 18.04 server安装图形界面及realvnc远程桌面

2022-02-11 13:20:55 2055

原创 C++ 指针知识点

一、野指针(invalid指针 或者无效指针)指向一块未知区域的指针是野指针例如 int *p = 0x123456; 这就是一个野指针,我们并不知道这个地址存的是什么内容1、没有使用“有效”的地址,给指针初始化int *p =NULL;//定义一个空指针*p =300;//*p 所指向的内存空间,是一个“无效访问区域”。2.指针被free或者delete之后,没有设置为NULL,让人误以为这是一个合法指针。free和delete只是把指针所指向的内存给释放掉,但并没有把指针本身给.

2022-01-25 20:37:12 227

转载 解决python粘包

python socket--TCP解决粘包的方法 - coldplaycode - 博客园 (cnblogs.com)

2022-01-12 16:51:37 87

原创 把Typora添加到右键菜单(有图,适合小白

原链接:https://www.pianshen.com/article/54871869072/这个有图,小白能看懂1.打开注册表2.定位HKEY_CLASSES_ROOT\Directory\Background\shell3.新建项Typora更改默认数据为Typora,再新建一个新建字符串值,命名为icon,其数据改为Typroa的安装路径4右键Typora新建项command,双击右边窗口的默认文件,填写文件路径,路径中的双引号不能少,表示字符串。5.效果...

2021-05-20 11:14:38 381 2

转载 jupyter notebook,print()显示不完全的问题

在使用jupyter notebook的时候,经常输出的数据比较长的时候,输出的数据的中间部分就会被省略,只显示开头和结尾的部分。在其他地方看到有人说可以修改custom文件,但是其实不用这么做只需要在print()函数前面加上三行代码即可pd.set_option('max_columns',1000)pd.set_option('max_row',300)pd.set_option('display.float_format', lambda x:' %.5f' % x)..

2021-05-11 23:54:38 4436

原创 HTTP的过程

爱文飞翔https://github.com/aiwenfeixiang博客园 首页 新随笔 联系 订阅 管理随笔 - 49文章 - 0评论 - 16HTTP协议超级详解HTTP协议简介超文本传输协议(英文:HyperTextTransferProtocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。HTTP的发展是由蒂姆·伯纳斯-李于1989年在欧洲核子研究组织(CERN)所发起。HTTP的标...

2020-05-11 12:46:34 167

原创 C++与JAVA的区别

一、基本类型和运算1.布尔常量,true和false不是数值,不能进行算术运算。而C++实际是整型。2.字符串常量,Java作为对象,有自己的属性和方法。C++,采用‘\0’结束的字符数组。3.字符型变量,Java采用Unicode编码,长度为16位,最大值65535。而C++是8位,最大值128。4.局部变量检查,当局部变量和外层如类中全局变量相同时,提示编译错误。Java认为相同的命名会容易导致对程序的误解和混淆。C++则“小范围变量屏蔽大范围变量”。5.变量赋值,类中未给出初始化.

2020-05-09 20:56:05 483

原创 静态链表与动态两边的优缺点

静态链表优点1.在插入和删除操作肘,只需要修改游标,不需要移动元素,从而改进了在顺序存储结构中的插入和删除操作需要移动大量元素的缺点缺点没有解决连续存储分配(数组)带来的表长难以确定的问题。失去了顺序存储结构随机存取的特性。动态链表的优缺点优点插入删除速度快 内存利用率高,不会浪费内存 大小没有固定,拓展很灵活。缺点不能随机查找,必须从第一个开始遍历,查找效率低数组的优缺点优点:数组定义简单,而且访问很方便缺点:插入删除都不方便数组中..

2020-05-09 20:43:35 2570

原创 进程与线程切换的区别

https://blog.csdn.net/github_37382319/article/details/97273713

2020-05-08 00:16:37 195

原创 数据库系统、数据仓库以及数据挖掘

作者:陈诚链接:https://www.zhihu.com/question/20623931/answer/139842331来源:知乎数据库:传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。数据库是针对业务需求设计的,可扩展性比较差数据仓库:数据仓库系统的主要应用主要是OLAP(On-Line Analytical Processin...

2020-05-07 23:31:35 381

原创 路由与转发的区别

转发是一个节点在本地执行的一个相对简单的过程,即报文从某台设备的一个端口进入而从另一个端口出去。路由选择依赖于网络发展过程中的不断演进的、复杂的分布式算法。最简单的路由选择可以决定报文发送的下一跳主机的地址,复杂的路由协议可以选择一条从主机1和主机2之间经过若干主机的路径。转发表和路由表的区别:1、转发表中的一行包括从网络号到发出接口的映射和一些MAC信息,而路由表作为建立转发表的前奏,是由路...

2020-05-07 22:13:38 11560

原创 软件测试方法(白盒测试&黑盒测试&基于风险的测试&模型测试)

一、软件测试概述  软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。第三软...

2020-05-07 19:29:16 2579

原创 分治法,动态规划及贪心算法区别

分治法,动态规划法,贪心算法这三者之间有类似之处,比如都需要将问题划分为一个个子问题,然后通过解决这些子问题来解决最终问题。但其实这三者之间的区别还是很大的。1.分治法分治法(Divide-and-Conquer) : 将原问题划分成n个规模较小而结构与原问题相似的子问题;递归地解决这些子问题,然后再合并其结果,就得到原问题的解。分治模式在每一层递归上都有三个步骤:...

2020-05-07 16:09:23 1159

原创 集线器(hub),交换机以及路由器异同;冲突域和广播域详解

https://blog.csdn.net/gui951753/article/details/79402528

2020-05-07 13:05:42 250

原创 软件开发模式

一、边改边做模型遗憾的是,许多产品都是使用"边做边改"模型来开发的。在这种模型中,既没有规格说明,也没有经过设计,软件随着客户的需要一次又一次地不断被修改.在这个模型中,开发人员拿到项目立即根据需求编写程序,调试通过后生成软件的第一个版本。在提供给用户使用后,如果程序出现错误,或者用户提出新的要求,开发人员重新修改代码,直到用户满意为止。边做边改型这是一种类似作坊的开发方式...

2020-05-06 17:11:46 454

原创 矩阵乘法的优化

1、第一点利用Cache的特点,把大矩阵乘法变成小矩阵的乘法(分治法的思想)https://blog.csdn.net/weixin_40673608/article/details/88135041?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&depth_1-utm_source...

2020-05-06 16:45:23 1897

原创 redis(扫盲)

https://zhuanlan.zhihu.com/p/130923806

2020-05-06 16:24:45 120

原创 docker(扫盲)

https://blog.csdn.net/gui951753/article/details/81148067?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommen...

2020-05-06 16:15:43 130

原创 堆的定义以及实现

https://www.cnblogs.com/hello-shf/p/11393655.html

2020-05-06 11:51:16 208

原创 物理层

1.奈奎斯特定理他给出了在假定的理想条件下,为了避免码间串扰,码元的传输速率的上限值。2、香农定理常用的编码方式:信道复用:...

2020-05-04 15:35:19 95

原创 ARP协议

1.ARP出现原因ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。其作用是在以太网环境中,数据的传输所依懒的是MAC地址而非IP地址,而将已知IP地址转换为MAC地址的工作是由ARP协议来完成的。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机和另一个主机进行直接通信,必须要知道目标主机的MAC地址...

2020-05-02 13:51:07 202

原创 面试常见问题

一、什么是深度学习深度学习是用于建立、模拟人脑进行分析学习的神经网络,并模仿人脑的机制来解释数据的一种机器学习技术。深度学习从统计学的角度来说,就是在预测数据的分布,从数据中学得一个模型然后再通过这个模型去预测新的数据,这一点就要求测试数据和训练数据必须是同分布。从Inception的角度上来看的话,其实深度学习是在模拟人脑的工作机制。它的基本特点是试图模仿大脑的神经元之间传递,处理...

2020-05-02 11:38:07 677

原创 计算性复杂理论初步(二):NP完全问题的基本概念

一、NP完全问题的定义(一)在定义P问题的基础上,我们进一步定义NP问题非确定行算法在多项式时间内可解,也可以理解为多项式内可验证准确的定义:定义一个NP问题,如果该问题的解在多项式时间内可验证。这里的可验证:1、多项式时间内可以推测该问题的一个解2、多项式时间检查这个解是不是该问题的一个解(二)NP问题举例最大团问题就是NP问题二、NP难问题与NP完全...

2020-04-27 13:22:54 527

原创 计算复杂性理论初步(一)多项式时间归约

一、归约的意义求解一个算法问题的时候,我们往往可以直观地感受到有些问题是比较难的,有些问题是比较简单的,但是我们并不能因为没有设计出一个比较高效的算法,就说它是一个难问题,所以问题的难易是相对的,我们需要一个科学的手段来界定问题的难易我们可以用问题之间的归约,来界定两个问题之间相对难易程度的基本手段二、优化问题与判定问题很多经典的难问题都是优化问题,而一个优化问题往往可以...

2020-04-27 12:48:22 2475 3

原创 死锁

一、死锁的产生1、进程推进顺序不当:2、PV操作使用不当3、资源分配不当:若系统中有m个资源被n个进程共享,每个进程都要求K个资源,而m < n·K时,即资源数小于进程所要求的总数时,如果分配不得当就可能引起死锁。4、对临时性资源使用不加限制:进程通信使用的信件是一种临时性资源,如果对信件的发送和接收不加限制,可能引起死锁二、死锁定义如果一个进程集合中的每一个进...

2020-04-27 11:16:26 133

原创 管程

一、为什么要引入管程1、把分散在各进程中的临界区集中起来进行管理2、防止进程有意或无意的违法同步操作3、便于使用高级语言书写程序二、管程的定义和属性定义:局部于自己的若干公共变量及其说明和所有访问这些公共变量的过程所组成的软件模块属性:共享性、安全性、互斥性三、管程的结构四、管程与进程的比较管程 进程 定义的是公用数据结构 私用...

2020-04-27 10:22:03 267

原创 临界区管理

一.临界区与临界资源(一)、概念并发进程中与共享变量有关的程序段叫“临界区”, 共享变量代表的资源叫“临界资源”(二)、临界区调度原则:互斥使用,有空让进忙则等待,有限等待择一而入,算法可行二、实现临界区的管理(一)、Peterson算法•bool inside[2];•inside[0]=false;•inside[1]=false;...

2020-04-25 23:07:31 639

原创 处理器的调度

一、处理器调度的层次(一)、不同级别的调度1、高级调度:它用于确定把后备队列上的哪些作业调入内存,并为之建立进程,分配其所需的资源,然后将它挂在就绪队列上。2、中级调度:引入中级调度的主要目的是为了提高内存的利用率和系统的吞吐量。内存中不能有太多的进程,把进程从内存移到外存,当内存有足够空间时,再将合适的进程换入内存,等待进程调度。中级调度实际上就是存储器管理中的对调功能。3、低...

2020-04-25 10:46:04 1815

原创 进程及其实现

一、进程的定义1、进程是可并发执行的程序在某个数据集合上的一次计算活动,也是操作系统进行资源分配和保护的基本单位2、可以用来共享资源又能描述程序并发为什么要引入进程概念1、刻画程序的并发性:程序是并发执行的,这是由于资源共享和竞争问题,程序自身只是计算任务的指令和数据的描述,是静态的,进程是动态描述2、共享性:可重入程序二、进程三态模型及其转换...

2020-04-25 00:12:58 875

原创 leetcode面试题 08.11. 硬币

硬币。给定数量不限的硬币,币值为25分、10分、5分和1分,编写代码计算n分有几种表示法。(结果可能会很大,你需要将结果模上1000000007)示例1:输入: n = 5输出:2解释: 有两种方式可以凑成总金额:5=55=1+1+1+1+1示例2:输入: n = 10输出:4解释: 有四种方式可以凑成总金额:10=1010=5+510=5+1+1+1+...

2020-04-24 00:05:32 143

原创 中断以及相关的概念

一、中断的概念中断是指程序执行过程中,遇到急需处理的事件时,暂时中止CPU上现行程序的运行转而执行相应的事件处理程序,待处理完成后再返回原程序被中断处或调度其他程序执行的过程二、中断的分类1、外中断:是指来自处理器之外的中断信号,包括时钟中断、键盘中断、设备中断、外中断又可分为:可屏蔽中断和不可屏蔽中断2、内中断:来自处理器内部,通常是由程序执行中,发现与当前指令相关联的...

2020-04-23 22:47:09 2948

原创 存储器的状态

一、特权指令与非特权指令1.从资源管理和控制程序执行的角度出发,把指令系统中的指令分作两部分:特权指令和非特权指令2.特权指令:只能提供给操作系统的核心程序使用的指令。如启动I/O设备、设置时钟、控制中断屏蔽位、清主存、建立存储键,加载PSW二、内核态与用户态处理器如何知道当前OS是一般用户程序在运行呢?可以根据PSW中的处理器状态标志三、处理器状态的转换...

2020-04-23 21:56:05 651

转载 数组和链表插入效率比较

数组和链表将对象插入指定位置时,大致可以分为两个步骤:1、找到要插入元素的位置2、进行插入操作可以得到等式:找到位置所需时间 + 插入所需时间 = 将对象插入指定位置所需总时间由此可以先假设几个值:找到插入元素的位置涉及的变量:要插入的位置为z获取一个对象引用所需时间m进行插入操作涉...

2020-04-23 16:07:56 1319 1

原创 详解布隆过滤器的原理、使用场景和注意事项

一、先给一道腾讯面试题如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?假设遇到这样一个问题:一个网站有 20 亿 url 存在一个黑名单中,这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中?并且需在给定内存空间(比如:500M)内快速判断出。可能很多人首先想到的会是使用 HashSet,因为 HashSet基于 HashMa...

2020-04-23 15:58:57 131

原创 ftp主动模式和被动模式的区别

一、FTP是什么FTP的中文名称是“文件传输协议”,是File Transfer Protocol三个英文单词的缩写。FTP:是TCP/IP协议组中的协议之一,其传输效率非常高,在网络上传输大的文件时,经常采用此协议。一个完整的FTP是FTP服务器和FTP客户端组成,客户端可以将服务器上的文件通过FTP协议下载到本地,也可以将本地数据通过FTP协议上传到服务器上。二、FTP的两个连...

2020-04-23 15:21:08 16006 3

原创 C++的三大特性:封装、继承、多态

一、面向对象编程在面向对象编程上可理解为:1、把客观事物封装成抽象的类,2、类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。二、三者之间的关系面向对象的三个基本特征是:封装、继承、多态。其中,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代码重用。而多态则是为了实现另一个目的——接口重...

2020-04-23 11:47:56 1139

原创 如何获得链表的中间节点 & 链表判环 (快慢指针)

一、如何获得链表的中间节点普通方法:1、先通过遍历得到链表的长度2、然后再通过长度遍历得到链表的中间节点3、当然有一些链表通过一个特殊的头节点记录链表的长度的情况,可能要简单一些。总公需要遍历的节点个数 1.5n快慢指针法:1、使用两个指针进行遍历,然后快指针每次步进2,慢指针每次步进12、当快指针到达链表尾部的时候吗,慢指针指向的就是链表的节...

2020-04-23 09:52:49 245

原创 用户态和核心态的概念以及为什么要区别?以及两者之间的切换

一、用户态和核心态的概念用户态:内核态与用户态是操作系统的两种运行级别,当程序运行在3级特权级上时,就可以称之为运行在用户态,因为这是最低特权级,是普通的用户进程运行的特权级,大部分用户直接面对的程序都是运行在用户态;核心态:当程序运行在0级特权级上时,就可以称之为运行在内核态。运行在用户态下的程序不能直接访问操作系统内核数据结构和程序。两种状态的主要区别处于用户...

2020-04-22 23:30:48 9883

空空如也

空空如也

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

TA关注的人

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