浏览器的缓存机制主要有三部分: 强缓存 协商缓存 缓存位置 强缓存 通过通过相应的字段来检查是否有强缓存 在 HTTP/1.0 中,使用的是Expires Expires即过...

浏览器的缓存机制主要有三部分: 强缓存 协商缓存 缓存位置 强缓存 通过通过相应的字段来检查是否有强缓存 在 HTTP/1.0 中,使用的是Expires Expires即过...
代理模式是为一个对象提供一个代用品或占位符,以便控制对它的访问。代理模式是一种非常有意义的模式,在生活中可以找到很多代理模式的场景。比如,明星都有经纪人作为代理。如果想请明星...
Dijkstra算法是一种计算从单个源到所有其他源的最短路径的贪心算法,这意味着我们可以用它来计算从图的一个顶点到其余各顶点的最短路径。考虑下面这个图。 我们来看看如何找到顶...
昨天在使用 fetch 时,发现返回的数据格式为 ReadableStream ,百度之下发现 fetch 默认返回的 body 就是 ReadableStream 数据,需...
下图为“HTTP 请求示意图”,展现浏览器中的 HTTP 请求所经历的各个阶段。 从图中可以看到,浏览器中的 HTTP 请求从发起到结束一共经历了如下八个阶段:构建请求、查找...
互联网中的数据是通过数据包来传输的,数据包在传输过程中容易丢失或出错。 1. IP 负责把数据包送达目的主机。 数据包要在互联网上进行传输,就要符合网际协议(Internet...
什么是并行处理 计算机中的并行处理就是同一时刻处理多个任务,比如我们要计算下面这三个表达式的值,并显示出结果。 在编写代码的时候,我们可以把这个过程拆分为四个任务: 任务 1...
在 HTTP 协议栈中引入安全层 由于 HTTP 的明文传输特性,在传输过程中的每一个环节,数据都有可能被窃取或者篡改,这倒逼着我们需要引入加密机制。于是我们在 HTTP 协...
同源策略 什么是同源 如果两个 URL 的协议、域名和端口都相同,我们就称这两个 URL 同源。比如下面这两个 URL,它们具有相同的协议 HTTPS、相同的域名 time....
广度优先搜索(BFS) 广度优先搜索(Breadth-First-Search),我们平常都简称 BFS。直观地讲,它其实就是一种“地毯式”层层推进的搜索策略,即先查找离起始...
图 一个图G=(V, E)由以下元素组成。 V:一组顶点 E:一组边,连接V中的顶点image.png 相邻顶点 由一条边连接在一起的顶点称为相邻顶点。比如,A和B是相邻的,...
堆 堆是一种特殊的树,满足这两点,它就是一个堆。 堆是一个完全二叉树; 堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。image.png(图中第 1 个...
二叉查找树(Binary Search Tree) 二叉查找树是二叉树中最常用的一种类型,也叫二叉搜索树。顾名思义,二叉查找树是为了实现快速查找而生的。不过,它不仅仅支持快速...
树 定义:树(Tree)是n(n>=0)个节点的有限集。当n=0时成为空树,在任意一棵非空树中: 有且仅有一个特定的称为根(Root)的节点; 当n>1时,其余节点可分为m(...
队列跟栈非常相似,支持的操作也很有限,最基本的操作也是两个:入队 enqueue(),放一个数据到队列尾部;出队 dequeue(),从队列头部取一个元素。 用数组实现的叫顺...
栈是一种操作受限的数据结构,只支持入栈和出栈操作。后进先出是它最大的特点。栈既可以通过数组实现,也可以通过链表来实现。不管基于数组还是链表,入栈、出栈的时间复杂度都为 O(1...