07 2021 档案
摘要:我们在游览器上输入一串网页地址,游览器通过DNS服务器查询IP地址,然后用IP地址访问WEB服务器,其中用的就是HTTP协议,发送请求回传页面内容是一些报文,但是不同人看不懂,就需要游览器进行渲染,最终形成我们看到的页面。 HTTP HTTP:超文本传输协议(HTTP)是一种通信协议,它允许将超文本
阅读全文
摘要:TCP/IP TCP/IP协议其实是一系列与互联网向关联的协议集合起来的总成。 分层管理是TCP/IP协议的重要特征; TCP/IP协议族分层 TCP/IP协议族是有一个四层协议组成的系统,这四层分别为:应用层,传输层,网络层和数据链路层; 应用层:应用层一般是我们编写的应用程序决定了向用户提供的应
阅读全文
摘要:虚析构 #include<iostream> class Base { public: Base() { std::cout << "base 构造" << std::endl; } virtual~Base() { std::cout << "base 析构" << std::endl; } };
阅读全文
摘要:io_utils.h #pragma once #include<stdio.h> #include<stdarg.h> void PrintBinary(unsigned int value); //#define PRINT_METADATA #ifdef PRINT_METADATA #def
阅读全文
摘要:> 此代码是在最大堆的基础上二次封装,请先阅读底层代码MaxHeap 优先队列 普通队列:先进先出;后进后出 优先队列:出队顺序和⼊入队顺序无关;和优先级相关; 为什么使用堆 代码清单 Queue.h // // Created by cheng on 2021/7/11. // #ifndef M
阅读全文
摘要:性质 二叉堆是一颗完全二叉树,而完全二叉树是把元素排列成树的形状。 堆中某个节点的值总不大于其父节点的值最大堆(相应的可以定于最小堆) // 返回完全二叉树的数组表示中,一个索引所表示的元素的父亲节点的索引 constexpr int parent(const int index) const {
阅读全文
摘要:双向循环链表 关于双向循环链表可以先阅读这篇文章这里就不再赘述:双向链表(DoubleLinkList) Node template<typename T> class Node { public: T e; Node *prev; Node *next; Node() : e(0), prev(n
阅读全文
摘要:双向链表 有关链表的知识可以点击我上篇文章这里就不再赘述LinkedList 双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。一般我们都构造双向循环链表。 双向循环链表的可以
阅读全文