LeetCode 11. 盛最多水的容器

每次移动较小侧指针;如果移动到更小的可以跳过计算结果,从而做到加速优化。

LeetCode 11. 盛最多水的容器
LeetCode 283. 移动零

• 要 count 没用。 • i 到头以后,后面用 left遍历到底即可。

LeetCode 283. 移动零
LeetCode 128. 最长连续序列

先集合存储,然后只研究左断点即可;遇到左端点就向右查找到尽头;注意存储后直接遍历集合

LeetCode 128. 最长连续序列
快速排序

💡 思路:外层双指针,内层选 pivot,拷贝指针并左右缩小范围。 🕙 时间复杂度:O(nlogn)。证明很复杂 📂 空间复杂度:O(n)。需要栈空间

快速排序
插入排序

💡 思路:外左内中始;内层逐步把新值插入到左侧有序组中 🕙 时间复杂度:O(n^2)。 📂 空间复杂度:O(1)。插入排序是原地排序算法。 1. 插入排序,分成左右两个子数组,左侧有序,右侧无序;内层循环把右侧逐一插入到左侧,即把左侧有序组的数值依次右移一位;不然就写成其他排序了。

插入排序
选择排序

💡 思路:外左内左始;内层遍历后交换。 🕙 时间复杂度:O(n^2)。 📂 空间复杂度:O(1)。选择排序是原地排序算法。 1. 选择排序,内层循环是遍历找到极值然后交换,不然就写成其他排序了。

选择排序
冒泡排序

💡 思路:外左内右始;内层两两相邻比较。 🕙 时间复杂度:O(n^2)。 📂 空间复杂度:O(1)。冒泡排序是原地排序算法。 1. 冒泡排序,内层是两两相邻比较,不然就写成其他排序了。 2. 内层排序前有一个优化,如果本轮其他数字都是有序的,就别排了,提前终止。这样除非一开始是逆序,否则时间复杂度一定是略小于 O(N^2)

冒泡排序
ARP 协议

ARP是一种用于解析IP地址和MAC地址对应关系的网络协议。它通过广播请求获取目标MAC地址,维护缓存表减少请求频率。协议存在RARP、代理ARP和免费ARP等变种,但缺乏认证机制易受欺骗攻击。⁠⁠

ARP 协议
网络层

本文详细介绍了网络层的核心概念,包括其在OSI和TCP/IP模型中的关键作用、主要功能(逻辑寻址、路由、分段与重组、互联)以及常用协议(IPv4和IPv6)。文章还探讨了路由技术(各类路由协议和算法)、网络层安全措施以及面临的挑战与未来发展方向,全面阐述了网络层如何通过地址分配、路由选择和数据包转发确保互联网正常运行。⁠⁠

网络层
传输层

本文详细介绍了传输层协议基础知识,包括TCP、UDP、SCTP和DCCP的特性与规范。重点分析了TCP报文格式、标志位和选项,以及在网络传输中的封装过程,为网络通信提供理论基础。

传输层
应用层

本文介绍应用层协议基础知识及PDU概念,详细列举了十种常见协议(如HTTP、FTP、DNS)的端口号、描述和PDU名称,强调它们在互联网通信中的重要作用。

应用层
网络参考模型基础

本文介绍了OSI七层网络参考模型和TCP/IP模型的基础知识。详细解析了OSI模型的七个层次及其功能,对比了OSI与TCP/IP模型的异同,并列举了常见的TCP/IP协议及其作用。同时介绍了主要的网络标准化组织及其标准制定过程。

网络参考模型基础
IPSec VPN

本文介绍IPSec VPN协议体系,包括其三大组件:安全协议(AH和ESP)、密钥管理(IKE和SA)及工作模式(传输和隧道模式)。阐述了加密认证过程、安全关联建立和数据封装流程,展示了IPSec如何在不安全网络上建立安全通信通道。

IPSec VPN
VPN 概述

VPN(虚拟专用网络)通过加密隧道技术,在公共网络上构建安全连接,从而降低成本并提高网络灵活性。文章介绍了VPN的背景、分类、关键技术以及其在身份认证、数据加密和完整性认证方面的应用。常见的VPN类型包括IPSec VPN、GRE VPN、MPLS VPN和SSL VPN,各自适用于不同场景。关键技术如隧道协议(PPTP、L2TP、IPSec、GRE、SSL/TLS)以及身份认证(如双因素认证、数字证书)、数据加密(对称/非对称加密)和完整性认证(HMAC、数字签名)共同确保了VPN的安全性与可靠性。本文全面解析了VPN的核心技术和应用场景。

VPN 概述