自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 配置属于你的VIM

打造属于你的VIM吧!VIM是什么?VIM配置文件我的VIMVIM是什么?VIM配置文件syntax on //开启高亮set number //设置行号set norelativenumberset cursorline //设置本行线set wrap //set showcmd set wildmenu //设置补全提示noremap n h //将h键的操作改为nnore

2020-10-28 18:36:15 313

原创 Leetcode--大数加法与乘法

大数加法与乘法大数加法:分析:代码:大数乘法:分析:代码:大数加法:以字符串的形式读入两个数字,编写一个函数计算它们的和,以字符串形式返回。(字符串长度不大于100000,保证字符串仅由’0’~'9’这10种字符组成)示例1输入“1”,“99”返回值“100”说明1+99=100分析:字符串之间的相加一定要考虑大数问题,例如s1 = “9999999999999” ,s2 = “999999999999999999”,如果直接把两个字符串转为整型相加,就会出现整型溢出的问题,所以

2020-10-28 16:47:43 823

原创 C++内存管理

C++内存管理(一)C/C++的内存分布在c++中内存分为5个区,分别是堆、栈、自由存储区、全局、静态存储区和常量存储区。堆:用于程序的内存动态分配。c语言使用malloc从堆上分配内存,使用free释放已分配的对应内存栈:函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。自由存储区:是c++基于new操作符的一个抽象概念,凡是通过new操作符进行内存申请,该内存即为自由存储区。全局/静态存储区:这块内存在编译的时候就已经分配好的,在程序整个运行期间都存在。常量

2020-10-28 14:53:35 786

原创 Leetcode--计算日期到该年的天数转换

计算日期到该年的天数转换题目描述:分析:代码:注意事项:题目描述:输入某年某月某日,判断这一天是这一年的第几天?。测试用例有多组,注意循环输入输入描述:输入多行,每行间隔分割,分别是年,月,日输出描述:成功:返回outDay输出计算后的第几天;失败:返回-1示例:输入2012 12 31输出366分析:这个题要计算xx年yy月kk日这一天是xx年的第多少天,所以一定要考虑闰年的情况,而由于每个月的天数是不一样的,我们在计算的时候为了方便,可以用一个数组来保存每个月的天数代码:

2020-10-28 10:25:27 417

原创 计算机网络知识总结

计算机网络一级目录TCP/IP五层模型:模型介绍:应用层:传输层:网络层:数据链路层:物理层:三级目录一级目录TCP/IP五层模型:模型介绍:应用层:传输层:网络层:数据链路层:物理层:三级目录...

2020-10-26 13:01:06 583 2

原创 网络中的链路层

网络中的链路层链路层:以太网协议格式:ARP协议:工作原理:数据帧的限制:MTU对TCP协议的影响:MTU对UDP协议的影响:链路层:链路层主要的工作就是通过MAC地址负责与相邻设备之间的数据传输主要协议有以太网协议,主要设备是交换机在两个主机进行通信的时候,中间有大量的星型路由网络结构,路径的选择是网络层干的事,链路层就负责每个相邻路由器之间的数据传输相邻设备:通过网线连接起来的两个设备就是相邻设备一个路由器可能连接了很多设备,一个设备有很多相邻设备,那么问题来了,如何识别指定的相邻设备就很重

2020-10-26 12:56:45 871

原创 网络中网络层协议

网络中网络层协议网络层:(一)IP协议:1. 地址管理:1.1 IP地址1.2 如何分配IP地址1.3 IP地址的组成:网络号+主机号1.4 网段(网络号)的划分1.5 特殊的IP地址2. 路由选择:(二)NAT/NAPT协议:(三)ICMP协议:网络层:网络层:负责地址管理与路由选择;主要的协议是IP协议;主要的设备是路由器还有NAT/NAPT/ICMP协议(一)IP协议:4位协议版本:IPV4/IPV64位头部长度:IP报头也是不定长的,因为有40字节的选项数据,所以最长60字节;最小2

2020-10-26 12:23:56 1116

原创 网络中传输层协议

网络传输层协议传输层:UDP:无连接:不可靠:面向数据报:TCP:面向连接:可靠:字节流:常见面试题:传输层:传输层主要是负责应用程序之间的数据传输,传输层主要的协议有TCP和UDPUDP:UDP:无连接、不可靠、面向数据报的传输UDP的协议格式:16位的源端口/16位的目的端口:描述数据从哪个进程发送到哪个进程 – 负责实现应用程序间的数据传输16位的数据报长度:包含UDP报文头部在内的整体报文长度,16位存储的最大数字为6553516位的校验和:二进制反码求和算法,用于校验接收到的数

2020-10-26 11:37:00 4268 1

原创 STL_string模拟实现

stringstring介绍:代码:代码实现:代码测试:测试结果:注意事项:string介绍:string是表示字符串的字符串类该类的接口与常规容器的接口基本相同,再添加了一些专门用来操作string的常规操作。string在底层实际是:basic_string模板类的别名,typedef basic_string<char, char_traits, allocator> string;不能操作多字节或者变长字符的序列代码:代码实现:namespace ZYY{ cla

2020-10-25 17:11:02 287

原创 STL_list模拟实现

listlist介绍:代码:代码测试:执行结果:注意事项:list介绍:list是可以在常数范围内在任意位置进行插入和删除的序列式容器,并且该容器可以前后双向迭代。list的底层是双向链表结构,双向链表中每个元素存储在互不相关的独立节点中,在节点中通过指针指向其前一个元素和后一个元素。list与forward_list非常相似:最主要的不同在于forward_list是单链表,只能向前迭代,已让其更简单高效。与其他的序列式容器相比(array,vector,deque),list通常在任意位置

2020-10-25 12:08:46 297

原创 STL_vector模拟实现

vectorvector介绍:代码:对代码代码进行测试:执行结果:vector介绍:vector是表示可变大小数组的序列容器。就像数组一样,vector也采用的连续存储空间来存储元素。也就是意味着可以采用下标对vector的元素进行访问,和数组一样高效。但是又不像数组,它的大小是可以动态改变的,而且它的大小会被容器自动处理。本质讲,vector使用动态分配数组来存储它的元素。当新元素插入时候,这个数组需要被重新分配大小为了增加存储空间。其做法是,分配一个新的数组,然后将全部元素移到这个数组。

2020-10-25 09:39:24 821

空空如也

空空如也

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

TA关注的人

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