- 博客(15)
- 收藏
- 关注
原创 网络层协议---ICMP协议
一、网际控制报文协议ICMP1、为什么会引入ICMP协议在上篇博客中讲过,IP协议提供的是不可靠无连接的数据传输服务,它具有传输数据到达目的主机的能力,但并不保证数据被准确送达,那么需要保证数据送达的工作应该由其他的模块来完成。其中一个重要的模块就是ICMP(网络控制报文)协议。 例如: 当传送IP数据包发生错误:比如主机不可达,路由不可达等等,ICMP协议将会把错误信息封包,然后传送...
2018-05-29 23:29:12 2627
原创 网络层--IP协议总结
一、网络层1、基本概念(1)网络层是一个承上启下的层,上面是传输层、应用层,下面是数据链路层、物理层。 (2)网络层的主要作用是实现终端节点之间的通信,这种端点之间的通信业称为点对点通信(end to end)。 (3) 网络层把实际上异构的网络通过IP协议变成一个统一的逻辑网络。 简单来讲网络层的作用就是在复杂的网络环境中为两个要进行通信的主机确定合适的数据报传输路径。...
2018-05-28 23:32:50 599
原创 STL 一级空间配置器
一、STL介绍STL(Standard Template Library,标准模板库),从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。 首先呢,让我们一起来理解一下STL的六大组件:1、STL六大组件简单介绍(1)容器(Container):作为STL的最主要组成部分--容器,分为序列式容器和关联式...
2018-05-27 23:36:58 805
原创 将string字符串中的空格替换
在网络编程中,如果URL参数中含有特殊的字符,比如空格,“+”等,往往会被当做特殊意义理解,所以这些特殊字符不能随便使用,但是如果URL参数中确实需要这样的字符,那么就需要对这些字符进行转义,方可继续执行。 例如:将字符串中的每个空格替换成“%20”;“we are happy” 经过替换后变成了“we%20are%20happy”. 下面用两种方法解决这个问题:1、直接调用strin...
2018-05-24 13:07:28 10767
原创 TCP/IP协议---TCP协议基础知识总结
一、TCP协议1、基本概念TCP全称为 “传输控制协议(Transmission Control Protocol”), TCP协议是网络模型中传输层协议,为应用层程序提供可靠的数据传输,因此协议也相对复杂一些;2、TCP协议主要特点(1)支持面向连接的传输服务应用程序在使用TCP协议所能提供的服务传送数据之前,必须在源端口与目的端口之间建立一条TCP传输连接。TC...
2018-05-15 23:26:56 1537
原创 TCP/IP协议---UDP协议总结
一、TCP/IP协议栈首先我们来了解一下什么是协议1、协议网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。 为了使数据在网络上从源到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议(protocol),它最终体现为在网络上传输的数据包的格式。2、T...
2018-05-14 22:27:47 859
原创 HTTP协议基础知识总结
一、HTTP协议1、基本概念HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。客户端连上web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式。2、HTTP协议的基本特点...
2018-05-14 20:02:38 2286
原创 最小生成树的Kruskal算法
给定一个无向图,如果它任意两个顶点都联通并且是一棵树,那么我们就称之为生成树(Spanning Tree),如果是带权值的无向图,所有权值之和最小的树就称之为最小生成树。1、最小生成树的基本准则若连通图由n个顶点组成,则其生成树必含n个顶点和n-1条边。因此构造最小生成树的准则有三条: 1. 只能使用图中的边来构造最小生成树 2. 只能使用恰好n-1条边来连接图中的n个顶点 3....
2018-05-12 22:42:02 698
原创 TCP服务器的单进程、多进程实现
一、socket编程在理解TCP服务器时,我们必须了解socket编程,在上篇博客中,我们知道在TCP/IP协议中,“IP地址+TCP端口号/UDP端口号”唯一标识网络通讯中的唯一一个进程,我们把“IP地址+端口号”就成为socket。在TCP协议中,建立连接的两个进程各自有一个socket来标识,那么这两个socket组成 的socketpair就唯一标识一个连接。socket本身有“插...
2018-05-08 20:20:50 3250 1
原创 图的深度优先遍历和广度优先遍历
在前面那篇文章中,只写了关于连通图的广度优先遍历算法和深度优先遍历算法,没有考虑到非连通图的情况 :https://blog.csdn.net/qq_37964547/article/details/80100975 那么现在对之前的代码进行优化,我们可以先来理一下思路:1、图的广度优先遍历算法所谓广度,就是一层一层的,向下遍历,层层堵截,BFS(){ 输入起始点;...
2018-05-07 20:44:07 841
原创 mysql中的数据类型总结
一、数据类型二、数值类型三、越界检验 在mysql中,整形可以指定为有符号和无符号的,默认是有符号的; 所以插入数值128时出现了越界错误。 我们可以通过UNSIGNED来说明某个字段是无符号的。 示例如下: 四、关于UNSIGNED首先我们来看一个例子,先建立一个表: 现在若执行a-b会有什么结果呢?会得到-1吗?我们来验证一下: 结果出错了...
2018-05-06 23:29:53 333
原创 mysql数据库和表的基本操作
最近在学习关于数据库方面的一些知识,就整理了一下数据库的一些基本用法:一、数据库的基本操作1、查看数据库命令:show databases; 2、创建数据库语法示例: CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] …] 其中大写字母为关键...
2018-05-06 11:04:28 391
原创 堆的简单操作实现
1、堆的基本概念关键码的集合按完全二叉树的顺序存储方式存储在一维数组中,并满足:对于所有节点它的父节点关键码都大于子节点(或都小于它的子节点),这样的堆称为最大堆(或最小堆)。2、堆的特性(1)父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。(2)每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。(3) 当父结点的键值总是大于或等于任何一个子节点的键值...
2018-05-03 22:00:36 472
原创 栈的实现及其应用
一、栈1、什么是栈栈(Stack)是一种线性存储结构,它具有如下特点: (1)栈中的数据元素遵守”先进后出”(First In Last Out)的原则,简称FILO结构。 (2)限定只能在栈顶进行插入和删除操作。2、栈的基本操作栈主要有以下几种基本操作: (1)push(): 向栈内压入一个成员; (2)pop(): 从栈顶弹出一个成员; (3)empty(): 如果栈...
2018-05-03 21:05:25 17819 4
原创 网络编程套接字socket简单用法
一、IP地址1、什么是IP地址IP地址是指计算机在网络上的地址,一台计算机可以有多个IP地址(看网卡上配置了多少个地址),通过IP地址,一台计算机可以找到远在千里之外的另一台计算机,并将信息投递给它。IP地址对应IP协议,IP协议工作在OSI七层模型中的网络层。2、IP报文结构(IPv4)我们先来看看IP报文结构图: (1)版本字段:长度为4位,表示所使用的网络层IP...
2018-05-02 22:26:32 553
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人