自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TCP ISO/OSI模型

OSI参考模型在网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信。而TCP/TP模型认为可靠性是端到端的问题,因此它在网络层仅有一种无连接的通信模式,但在传输层支持无连接和面向连接两种模式。

2024-05-15 16:24:13 353

原创 计算机网络网络类型分类

互联网/因特网(Internet):指全球最大的,开放的,由众多网络和路由器互联而成的特定计算机网络,采用TCP/IP协议簇作为通信规则。互连网(internet):注意名字,和上面是不一样的,泛指由多个计算机网络互连成的网络,可以使用任意的通信协议,不比拘泥于TCP/IP。万维网(www):这是一种建立在互联网上的信息系统,将图片,视频 文档等内容连接在一起 计算机网络对比不做考察。以太网:广泛作用于局域网,注意是局域网,局域网采用广播方式发送信息,主机之间通信方式是半双工。

2024-03-26 20:39:34 238

原创 计算机网络各层次的PDU名称

在物理层称为比特,数据链路层成为帧,这俩似乎没有争议,但是在网络层普遍的成为分组或数据包(似乎看到带包的就为网络层的PDU),另外还有一个名称叫数据报(可能会疑问,数据报不是传输层的PDU名称吗?但是网络层确实可以叫做这个),最后就是传输层,对于TCP作为协议的传输层就管PDU叫做报文段,对于UDP作为协议传输的PDU就叫做数据报,应用层一般就叫报文,大致是这个样子,王道书中说到,无论在哪一层传输的数据单元,都可以笼统的称作“分组”。第三种是TCP/IP五层模型,学习考试学的就是这五层模型。

2024-03-15 19:32:32 626 1

原创 计算机网络差错检测和纠正技术

他们俩首先有一个沟通,事先商量好一个多项式,这是他们俩都知道的,主机A通过一些计算知道了他发送数据的后面还得发送一个001(余数),主机B收到了来信,发现信息是101001001(没有错误),他再进行相关计算,发现余数恰好为零,那么信息没有错误,如果主机B收到的信息是100001001呢?故名思意,对于奇校验,首先查看d比特数据里有多少个1,如果有奇数个1,那么就将那一位校验位设为0,如果是有偶数个1,就将那以为校验位设为0,实际上就是保证最后的数据(d比特数据+1比特校验)里面有奇数个1。

2022-10-07 14:01:43 1683 1

原创 LeetCode 35. 搜索插入位置

题目描述:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例2:输入: nums = [1,3,5,6], target = 2输出: 1来源:力扣(LeetCode)链接:https://leetcode.cn/problems/search-insert-posit.

2022-05-11 16:17:57 827

原创 LeetCode 28. 实现 strStr()

实现 strStr() 函数。给你两个字符串haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回-1 。说明:当 needle 是空字符串时,我们应当返回什么值呢?这是一个在面试中很好的问题。对于本题而言,当needle是空字符串时我们应当返回 0 。这与 C 语言的strstr()以及 Java 的indexOf()定义相符。示例 1:输入:haystack = ...

2022-05-11 15:31:14 114

原创 LeetCode 27. 移除元素

题目描述:给你一个数组 nums和一个值 val,你需要 原地 移除所有数值等于val的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。事例:输入:nums = [3,2,2,3], val = 3输出:2, nums = [2,2]解释:函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。例如,函数...

2022-05-10 14:21:53 98

原创 LeetCode 942. 增减字符串匹配

由范围 [0,n] 内所有整数组成的 n + 1 个整数的排列序列可以表示为长度为 n 的字符串 s ,其中:如果perm[i] < perm[i + 1],那么s[i] == 'I'如果perm[i] > perm[i + 1],那么 s[i] == 'D'给定一个字符串 s ,重构排列perm 并返回它。如果有多个有效排列perm,则返回其中 任何一个。示例 1:输入:s = "IDID"输出:[0,4,1,3,2]示例 2:输入:s = "III"...

2022-05-09 21:04:00 887 3

原创 对自己学习的一点总结

从开始踏入计算机这个专业,到目前为止已经过了一百多天,这一百天里,跟着B站上张鹏伟老师学习C语言,跟着王卓老师学数据结构,目前这两个已经浅学完了,准备去学习LINUX操作系统和计算机网络基础知识,感觉自己真的low啊,看着人家那些大神真的是羡慕。其实说了这么多,就是想在这里记录一下自己的新的,并且从今天开始刷leetcode,先从简单的开始,为什么呢?因为难的我不会....

2022-05-09 20:20:47 265

原创 动态开辟内存中常见的一些问题

终于学到了C语言中的动态开辟内存,下面来简单介绍一下动态开辟内存中常见的一些问题//1.对空指针进行解引用操作 int* p = (int*)malloc(100);//因为未进行判断,所以我们不知道内存是否开辟成功,直接进行解引用,会造成非法访问 for (int i = 0;i < 25;i++) { *(p + i) = i; } for (int j = 0;j < 25;j++) { printf("%d ", *(p + j)); } return

2022-01-20 22:45:27 321

原创 位段的学习

学习了结构体之后,紧接着又学习了位段,那么让我们先来看看下面这段代码#include<stdio.h>struct A{ int _a : 2;//位段 int _b : 5; int _c : 10; int _d : 30;};struct B{ char _a : 1; char _b : 2; char _c : 3; char _d : 4;};int main(){ struct A s; struct B s1; printf

2022-01-18 13:00:49 48

原创 杨氏矩阵的查找

先来说明一下什么叫做杨氏矩阵如果一个矩阵的每一行从左至右依次递增,每一列从上到下依次递增,则成这样的矩阵为杨氏矩阵。那么接下来,来实现在杨氏矩阵中查找某个元素的算法#include<stdio.h>void find_k(int arr[][3], int k){ int count = 0; while (1) { if (arr[count][2] > k) { for (int i = 0;i < 3;i++) { if (a

2022-01-10 22:39:36 310

原创 关于字符串旋转问题的一些心得

最近在学习编程,跟着B站一起在学习,讲了一个字符串旋转的问题,想写个博客记录一下,下面是这个题的题目。题目内容:实现一个函数,可以左旋字符串中的k个字符例如:ABCD左旋一个字符得BCDAABCD左旋两个字符得CDAB因为我是初学者,所以一开始自己写的代码比较low,希望大家不要见笑#include<stdio.h>#include<string.h>#include<assert.h>int is_reverse(char* st

2022-01-09 18:01:28 345 2

空空如也

空空如也

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

TA关注的人

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