计算机网络基础(7)中科大郑铨老师笔记

应用层

目标:
 网络应用的 原理:网络应用协议的概念和实现方面
传输层的服务模型
客户-服务器模式
对等模式(peerto-peer)
内容分发网络
 网络应用的 实例:互联网流行的应用层协 议
 HTTP
 FTP
 SMTP / POP3 / IMAP
 DNS
编程:网络应用程序
 Socket API

一些网络应用的例子

 E-mail
 Web
 文本消息
 远程登录
 P2P文件共享
 即时通信
 多用户网络游戏
 流媒体(YouTube, Hulu, Netflix)
 Internet 电话
 实时电视会议
 社交网络
 搜索

创建一个新的网络应用

编程
 在不同的端系统上运行
 通过网络基础设施提供的服务,应用进程彼此通信
如Web:
 Web 服务器软件与浏览器软件通信
网络核心中没有应用层软件
 网络核心没有应用层功能
 网络应用只在端系统上存在 ,快速网络应用开发和部署

网络应用的体系结构

可能的应用架构:
 客户-服务器模式(C/S:client/server)
 对等模式(P2P:Peer To Peer)
 混合体:客户-服务器和对等体系结构

客户-服务器(C/S)体系结构

 服务器:
 一直运行
 固定的IP地址和周知的端 口号(约定)
 扩展性:服务器场
 数据中心进行扩展
 扩展性差
 客户端:
 主动与服务器通信
 与互联网有间歇性的连接
可能是动态IP 地址
 不直接与其它客户端通信

对等体(P2P)体系结构

 (几乎)没有一直运行的服务器
 任意端系统之间可以进行通信
 每一个节点既是客户端又是服 务器
 自扩展性-新peer节点带来新的 服务能力,当然也带来新的服 务请求
 参与的主机间歇性连接且可以 改变IP 地址
 难以管理
 例子: Gnutella,迅雷 

C/S和P2P体系结构的混合体

Napster
文件搜索:集中
 主机在中心服务器上注册其资源
 主机向中心服务器查询资源位置
文件传输:P2P
 任意Peer节点之间 即时通信
在线检测:集中
当用户上线时,向中心服务器注册其IP地址
用户与中心服务器联系,以找到其在线好友的位置
两个用户之间聊天:P2P

43ff36ab7ce345318f3bea6e795601b8.png611237f3d9c54721a888a797173e3e6c.png5d65700be5c44833959d6db1d9adf83a.png 

3f893c0d1ff5493c8d93e99532d4a7c3.png

633c4a70c0d04db794e5fab9746697d1.pngd74ee457d5804104980d7aaf4b187623.pngacaae917ec9345fc9b62191b1847aa03.png4df62223b0c3420187448adc4c1b7e81.png621f17d44b5e4aecb7e14afb3299c14f.png0394011ae4ce41c893b02d7eaa4f81bf.png77617c24851e48888ea13a8971a1e348.png9418221e30e3426b828744b0cb26b87b.png

442be95f46a04dc6aa8232063a9f18b6.pnge12bc1b1067a4cf8a4a001d9daf1e6e5.png2398bb08d22044159c6461aac61cfa3f.png3f745e484254489f99e3b55ef37539d7.pngf714c982d64e467099a931c2e9340467.pngb2facac710e941debbe534527aa91001.png64a63bc014744184a6bb7fdc77908bc3.pngfed35c854fc34ea3830edbf1f7377730.png6c5a554c3aa14092855c42238ac66a39.png 

一、互联网应用层

  • 创新与发展的深度剖析
    • 互联网应用层的创新宛如一股强劲的动力,持续推动着全球经济的蓬勃发展。它不仅催生了众多新兴的商业模式和产业形态,还深刻改变了人们的生活方式和消费习惯。例如,电子商务的兴起让购物变得更加便捷,在线教育打破了地域限制,为人们提供了丰富的学习资源。
    • CS(客户端 - 服务器)模式在早期互联网应用中发挥了重要作用,其结构简单,易于实现和管理。然而,随着用户数量的急剧增加和业务需求的日益复杂,CS 模式的可扩展性差的问题逐渐凸显。当服务器面临大量并发请求时,容易出现性能瓶颈,甚至导致系统崩溃。相比之下,一些新型的架构模式如微服务架构等,通过将应用拆分成多个小型服务,能够更好地应对高并发和复杂业务场景,提高了系统的可扩展性和灵活性。
    • 互联网协议在企业应用中的广泛应用得益于其强大的通用性和灵活性。这些协议为各种应用层功能的实现提供了坚实的基础,使得企业能够快速部署新的应用系统,以适应市场变化和业务发展的需求。例如,企业可以利用 HTTP 协议构建 Web 应用,通过 SMTP 协议实现邮件服务等。同时,丰富的开源框架和工具也进一步降低了企业应用开发和部署的门槛,加速了数字化转型的进程。
    • 我国在网络应用创新方面取得了令人瞩目的成就,走在了世界的前沿。共享单车的出现解决了城市居民 “最后一公里” 的出行难题,同时也推动了共享经济的发展;网约车平台通过整合闲置的车辆资源,为人们提供了更加便捷、高效的出行方式。这些创新应用的背后,离不开高等教育和职业教育对大量工科人才的培养。高校和职业院校不断优化课程设置,加强实践教学,培养了具备扎实专业知识和创新能力的人才队伍,为网络应用创新提供了源源不断的智力支持和人才保障。

二、网络应用进程间通信

  • 通信方式的详细解读
    • CS 模式是一种传统的通信方式,其中客户端向服务器发送请求,服务器处理请求并返回响应。这种模式在许多场景中仍然广泛使用,如 Web 服务器、数据库服务器等。服务器通常具有强大的计算和存储能力,能够集中管理和处理大量客户端的请求,保证数据的一致性和安全性。然而,随着网络规模的扩大和应用需求的多样化,CS 模式的单点故障问题和性能瓶颈逐渐成为制约其发展的因素。
    • P2P 模式则打破了传统的中心化架构,每个节点既可以作为客户端请求服务,也可以作为服务器提供服务。这种模式具有去中心化、可扩展性强、资源利用率高等优点,在文件共享、流媒体传输等领域得到了广泛应用。例如,在 P2P 文件共享系统中,用户可以直接从其他节点下载文件,而不需要通过中央服务器,大大提高了下载速度和效率。但是,P2P 模式也面临着一些挑战,如网络拓扑结构复杂、安全性难以保障、版权问题等。
    • 混合模式结合了 CS 和 P2P 的优点,根据具体的应用场景和需求,灵活地选择合适的通信方式。例如,在一些在线游戏中,服务器负责游戏逻辑的处理和玩家状态的管理,而玩家之间的实时交互则采用 P2P 方式,这样既保证了游戏的稳定性和公平性,又提高了玩家之间的交互效率。
    • 基本要求与本质的深入理解
    • 进程间通信必须严格遵守网络规范,这是确保通信顺利进行的基础。网络规范包括一系列的协议、标准和规则,如 TCP/IP 协议栈、网络拓扑结构、数据包格式等。操作系统提供了丰富的网络通信协议和接口,供应用程序使用。这些协议封装了底层的网络细节,使得应用程序能够方便地进行远程通信,而无需关心网络的物理连接和数据传输的具体过程。
    • 远程通信的本质是在不同端系统上的两个应用进程之间建立起有效的信息交换通道。为了实现这一目标,需要解决多个关键问题,如进程的标识与定位、数据的可靠传输、流量控制、拥塞控制等。不同的通信协议和机制在这些方面各有特点和优势,应用程序需要根据自身的需求选择合适的通信方式和协议。

三、应用进程标识与传输层服务

  • 标识与通信的全面阐述
    • 应用进程的端点标识是实现进程间通信的关键要素之一。端点标识通常由主机的 IP 地址和端口号组成,形成一个唯一的标识符,用于区分网络中的不同进程。例如,在一台服务器上,可能同时运行着多个 Web 服务进程,每个进程通过不同的端口号来接收客户端的请求。端口号的范围是 0 - 65535,其中一些端口号被系统保留用于特定的服务,如 HTTP 服务通常使用 80 端口,HTTPS 服务使用 443 端口等。
    • 任意两个进程间的通信可以用两个端点标识来表示,这类似于现实生活中两个地址之间的通信。发送方进程将数据封装成数据包,并在数据包中添加源端点标识和目标端点标识,然后通过网络传输到目标进程。传输层负责将数据包从源端传输到目标端,并确保数据的可靠传输或提供尽力而为的传输服务,具体取决于所使用的传输层协议(如 TCP 或 UDP)。
    • 传输层在传递数据时,不仅要传输应用层的消息(货物),还需要包含发送方的信息,如端口号等。这些信息对于接收方正确处理数据至关重要。例如,当接收方收到一个数据包时,它可以根据数据包中的源端口号将响应数据发送回发送方的相应进程,从而实现双向通信。此外,传输层还可能提供一些其他的服务,如流量控制、拥塞控制、错误检测和恢复等,以保证数据传输的质量和效率。

四、TCP Socket 相关内容

  • 概念与作用的深入解析
    • TCP Socket 是传输控制协议(TCP)在应用层的接口,它是一个本地标识,为应用程序提供了一种方便、高效的方式来与网络进行交互。通过 TCP Socket,应用程序可以创建、连接、发送和接收数据,而无需关心底层 TCP 协议的复杂细节。TCP Socket 的设计旨在便于操作系统管理网络连接和数据传输,同时减少应用程序与网络层之间的信息量交互。
    • 在讨论应用进程的标识时,主机 IP 地址和 TCP 或 UDP 端口号是不可或缺的组成部分。IP 地址用于标识网络中的主机,而端口号则用于标识主机上的特定进程。TCP Socket 将这两个要素结合起来,形成一个唯一的标识符,使得操作系统能够准确地将网络数据包路由到正确的应用进程。例如,当一个客户端应用程序想要与服务器上的某个服务进行通信时,它需要知道服务器的 IP 地址和服务所监听的端口号,然后创建一个 TCP Socket 并连接到该服务器的指定端口,从而建立起通信连接。
    • Socket 的概念不仅仅局限于 TCP,它是一种通用的网络编程接口,可以用于多种传输层协议,如 UDP 等。通过使用整数来代表 IP 地址和端口号,Socket 简化了网络编程的复杂性,提高了程序的可读性和可维护性。同时,操作系统对 Socket 进行了高效的管理,包括连接的建立、数据的缓存、错误处理等,为应用程序提供了可靠的网络通信支持。

五、TCP 和 UDP 的 Socket 值及相关内容

  • Socket 值代表意义的详细说明
    • TCP 的 Socket 值所代表的绘画关系可以理解为一种可靠的、面向连接的通信会话。在 TCP 通信中,客户端和服务器之间需要先建立连接,然后才能进行数据传输。这个连接就像是一条虚拟的管道,保证了数据的有序、可靠传输,并且能够进行流量控制和拥塞控制,确保数据不会丢失或损坏。TCP Socket 的值包含了源 IP 地址、源端口号、目标 IP 地址和目标端口号等信息,这些信息共同标识了一个唯一的 TCP 连接。例如,当一个 Web 浏览器与 Web 服务器建立连接时,浏览器会创建一个 TCP Socket,并通过该 Socket 与服务器进行 HTTP 通信,传输网页内容等数据。
    • UDP 的 Socket 值则代表了本地 IP 和端口的映射关系,它是一种无连接的传输协议。UDP 不需要在发送数据之前建立连接,因此具有较低的延迟和较高的传输效率,适合于对实时性要求较高的应用场景,如实时多媒体应用、在线游戏等。UDP Socket 的值主要由本地 IP 地址和端口号组成,当应用程序通过 UDP Socket 发送数据时,操作系统会根据 Socket 值将数据包发送到网络中,但并不保证数据的可靠传输,也不提供流量控制和拥塞控制等功能。这意味着 UDP 数据包可能会丢失、重复或乱序到达接收方,因此应用程序需要在应用层自行处理这些问题。
    • 在封装 TCP 段时,源端口号和目标端口号是非常重要的字段。源端口号用于标识发送方的进程,目标端口号用于标识接收方的进程。当 TCP 段到达目标主机时,操作系统会根据目标端口号将数据交付给相应的应用进程。同样,IP 协议在封装 IP 分组时,源 IP 地址和目标 IP 地址用于标识数据包的发送方和接收方主机,确保数据包能够在网络中正确路由和传输。应用进程通过 Socket 值找到相应的进程接收数据,这是网络通信中数据传输的最后一步,也是应用程序与网络交互的关键环节。

六、应用协议与 UDP 相关内容

  • 应用协议的全面解读
    • 应用协议是应用层遵循的一系列规则和约定,它涵盖了数据的格式、语法、语义和动作次序等多个方面。这些规则确保了不同应用程序之间能够进行有效的通信和交互。例如,HTTP 协议规定了 Web 浏览器与 Web 服务器之间请求和响应的格式,包括请求方法(如 GET、POST 等)、URL、头部信息、消息体等。应用程序必须严格按照 HTTP 协议的规范来构建和解析请求和响应,才能实现正确的 Web 通信。
    • UDP 发送和接收的基本原理相对简单。发送方应用程序将数据封装成 UDP 数据包,在数据包中指明对方的 IP 地址和端口号,然后通过操作系统的网络接口将数据包发送到网络中。接收方应用程序则需要在指定的端口上监听 UDP 数据包,当收到数据包时,根据数据包中的源 IP 地址和端口号以及数据内容进行相应的处理。由于 UDP 不提供连接的建立和维护,因此发送方可以随时向接收方发送数据,而不需要事先进行连接协商。
    • UDP Socket 作为一个具有本地意义上的二元组的映射关系,为应用程序提供了发送和接收 UDP 数据的接口。应用程序通过创建 UDP Socket 并绑定到本地的 IP 地址和端口号,就可以开始进行 UDP 通信。例如,在一个实时视频流应用中,视频服务器可以使用 UDP Socket 将视频数据快速地发送到多个客户端,客户端通过 UDP Socket 接收视频数据并进行播放。虽然 UDP 本身不保证数据的可靠性和顺序性,但在一些实时性要求较高的场景中,应用程序可以通过一些机制来弥补这些不足,如增加冗余数据、使用序列号等。
    • 传输层提供的服务是应用层进行网络通信的基础。应用层可以借助传输层提供的服务,如 TCP 的可靠传输服务或 UDP 的快速传输服务,来建立 Socket 并进行数据的发送和接收。应用程序根据自身的需求选择合适的传输层协议和服务,例如,对于文件传输等对数据可靠性要求较高的应用,通常选择 TCP;而对于实时语音通话等对实时性要求较高的应用,UDP 可能是更好的选择。

七、TCP 与 UDP 的特性及应用场景

  • 特性与场景的深入探讨
    • TCP 的特性与应用场景
      • 可靠性:TCP 通过序列号、确认应答、重传机制等确保数据的可靠传输。发送方发送的数据如果没有收到接收方的确认,会自动重传,直到数据被正确接收。这种可靠性使得 TCP 适用于对数据准确性要求极高的应用场景,如文件传输、电子邮件等。例如,在企业内部网络中,员工通过 FTP(文件传输协议)传输重要的业务文件时,TCP 能够保证文件的完整性和准确性,避免因数据丢失或损坏而导致的业务问题。
      • 面向连接:TCP 在数据传输之前需要建立连接,这个连接过程包括三次握手,确保双方都准备好进行通信。连接建立后,双方可以进行全双工通信,即同时发送和接收数据。这种面向连接的特性使得 TCP 适合于需要长时间、稳定通信的场景,如远程登录(SSH)、数据库连接等。例如,数据库服务器与客户端应用程序之间通常使用 TCP 连接,以保证数据的一致性和事务的完整性。
      • 流量控制和拥塞控制:TCP 通过滑动窗口机制进行流量控制,根据接收方的接收能力动态调整发送方的发送速率,避免接收方缓冲区溢出。同时,TCP 还具有拥塞控制机制,通过监测网络拥塞状况,自动调整发送窗口大小,避免网络拥塞。这些机制使得 TCP 能够在复杂的网络环境中有效地利用网络资源,保证数据传输的效率和稳定性。例如,在广域网环境中,由于网络带宽和延迟等因素的影响,TCP 的流量控制和拥塞控制机制能够确保数据传输的平稳进行,避免因网络拥塞而导致的数据传输延迟或丢失。
    • UDP 的特性与应用场景
      • 实时性:UDP 没有复杂的连接建立和维护过程,数据可以立即发送,因此具有较低的延迟,适合于对实时性要求较高的应用,如实时多媒体应用(视频会议、在线直播等)、实时游戏等。例如,在视频会议中,UDP 能够快速地传输视频和音频数据,减少延迟,保证参会者之间的实时交流和互动。
      • 无连接性:UDP 是无连接的协议,发送方可以随时向任意目标发送数据,不需要事先建立连接。这使得 UDP 在一些广播和多播场景中非常适用,如网络视频广播、实时股票行情推送等。例如,股票交易系统可以使用 UDP 将实时的股票价格信息推送给多个客户端,客户端无需与服务器建立连接即可接收数据。
      • 资源消耗低:由于 UDP 不需要维护连接状态和进行复杂的流量控制、拥塞控制等操作,因此它对系统资源的消耗相对较低。这使得 UDP 在一些资源受限的设备或网络环境中具有优势,如物联网设备、移动网络等。例如,一些智能家居设备通过 UDP 将传感器数据发送到云端服务器,以节省设备的计算和存储资源。
    • 安全性问题与解决方案
      • TCP 和 UDP 本身都不提供数据的加密和完整性保护,数据在网络中是以明文形式传输的,这可能会导致数据泄露和篡改等安全问题。为了增加安全性,可以使用 SSL(安全套接层)协议或其后续版本 TLS(传输层安全)协议。HTTPS 协议就是 HTTP 协议与 SSL/TLS 协议的结合,用于提供 Web 应用之间的安全通信。在 HTTPS 通信中,客户端和服务器之间通过 SSL/TLS 协议建立安全连接,对数据进行加密和完整性验证,保护用户密码、信用卡信息等敏感数据的安全。例如,在网上银行、电子商务网站等场景中,HTTPS 协议是保障用户信息安全的重要手段。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/948198.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Fabric环境部署-Git和Node安装

一.安装Git(v2.43.0) Git 是一个开源的分布式版本管理系统(也是全球最大的开源软件存储服务器),用于敏捷高效地处理任何或小或大的项目。搭建区块链需要使用Git,因为区块链的开发和部署需要使用版本控制工…

SAP MM物料管理模块常见BAPI函数清单

【SAP系统研究】 #SAP #MM #物料管理 #函数 #BAPI 1、物料主数据 BAPI_MATERIAL_SAVEDATA 创建/更改物料主数据 BAPI_MATERIAL_SAVEREPLICA 物料主数据视图扩充 BAPI_MATERIAL_EXISTENCECHECK 检查物料主数据是否存在 BAPI_MATERIAL_GETLIST 显示物料主数据明细 BAPI_MATERIALG…

Windows11安装Oracle11g以及plsqldev工具连接配置

文章目录 一、安装Oracle数据库软件二、配置数据库三、配置监听(listener.ora)四、本地网络服务名配置(tnsnames.ora)五、网络服务名配置以及监听文件路径六、plsqldev工具连接Oracle配置 一、安装Oracle数据库软件 点击“setup.…

unity学习6:unity的3D项目的基本界面和菜单

目录 1 unity界面的基本认识 1.1 file 文件 1.2 edit 编辑/操作 1.3 Assets 1.4 gameobject 游戏对象 1.5 组件 1.6 windows 2 这些部分之间的关系 2.1 关联1: Assets & Project 2.2 关联2:gameobject & component 2.3 关联3&#xf…

HTML5新特性|06 文本效果text-shadowword-wrap自定义字体

文本效果 1、CSS3包含多个新的文本特性 属性: text-shadow:水平阴影 垂直阴影 模糊距离 阴影颜色 word-wrap:用于指定当文本溢出其容器的边界时如何处理换行的问题 浏览器支持: Internet Explorer 10、Firefox、 Chrome、 Safari 以及Opera支持text-shadow属性…

【踩坑指南2.0 2025最新】Scala中如何在命令行传入参数以运行主函数

这个地方基本没有任何文档记录,在学习的过程中屡屡碰壁,因此记录一下这部分的内容,懒得看可以直接跳到总结看结论。 踩坑步骤 首先来看看书上让我们怎么写: //main.scala object Start {def main(args:Array[String]) {try {v…

【路径跟踪】PIDMPC

路径跟踪(Path Tracking)是指在实际行驶过程中,根据预先规划好的路径进行控制,能够沿着设定的路径行驶。常见的路径跟踪算法包括基于模型的控制方法(如PID控制器)、模型预测控制(Model Predicti…

python3GUI--智慧交通监控与管理系统 By:PyQt5

文章目录 一.前言二.预览三.软件组成&技术难点1.软件组成结构2.技术难点3.项目结构 四.总结 大小:35.5 M,软件安装包放在了这里! 一.前言 博主高产,本次给大家带来一款我自己使…

HP 电脑开机黑屏 | 故障判断 | BIOS 恢复 | BIOS 升级

注:本文为 “HP 电脑开机黑屏 | 故障判断 | BIOS 恢复 | BIOS 升级” 相关文章合辑。 引文图片 csdn 转储异常,重传。 篇 1:Smart-Baby 回复中给出故障现象判断参考 篇 2、篇3 :HP 官方 BIOS 恢复、升级教程 开机黑屏&#xff0c…

三甲医院等级评审八维数据分析应用(一)--组织、制度、管理可视化篇

一、引言 1.1 研究背景与意义 在当今医疗领域,三甲医院作为医疗服务的核心载体,肩负着保障民众健康、推动医学进步的重任。随着信息技术的飞速发展,数据已成为医院运营管理、医疗质量提升以及科学决策的关键要素。三甲医院等级评审作为衡量医院综合实力与服务水平的重要标…

数据表中列的完整性约束概述

文章目录 一、完整性约束概述二、设置表字段的主键约束三、设置表字段的外键约束四、设置表字段的非空约束五、设置表字段唯一约束六、设置表字段值自动增加七、设置表字段的默认值八、调整列的完整性约束 一、完整性约束概述 完整性约束条件是对字段进行限制,要求…

关于PINN进一步的探讨

pinn 是有监督、无监督、半监督? PINN(Physics-Informed Neural Networks,物理信息神经网络)通常被归类为一种有监督学习的方法。在PINN中,神经网络的训练过程不仅依赖于数据点(例如实验观测数据&#xff0…

VUE条件树查询 自定义条件节点

之前实现过的简单的条件树功能如下图&#xff1a; 经过最新客户需求确认&#xff0c;上述条件树还需要再次改造&#xff0c;以满足正常需要&#xff01; 最新暴改后的功能如下红框所示&#xff1a; 页面功能 主页面逻辑代码&#xff1a; <template><div class"…

游戏如何检测iOS越狱

不同于安卓的开源生态&#xff0c;iOS一直秉承着安全性更高的闭源生态&#xff0c;系统中的硬件、软件和服务会经过严格审核和测试&#xff0c;来保障安全性与稳定性。 据FairGurd观察&#xff0c;虽然iOS系统具备一定的安全性&#xff0c;但并非没有漏洞&#xff0c;如市面上…

GraphRAG vs 传统 RAG:如何通过知识图谱提升 AI 检索能力

相比传统 RAG 仅能独立检索文本片段的局限性&#xff0c;GraphRAG通过构建实体关系图谱实现了信息间的连接&#xff0c;让 AI 能更完整地理解和检索复杂的关联信息&#xff0c;从而生成更准确和连贯的回答 问题背景: 想象有一本详细记录某人(X)成就的传记,每个章节都描述了他的…

Linux平台下实现的小程序-进度条

目录 1.换行、回车概念 2.缓冲区 2.1缓冲区 2.2强制刷新 3.进度条程序 Makefile文件 ProgressBar.h ProgressBar.c Main.c 执行结果 1.换行、回车概念 /n&#xff1a;换行回车&#xff08;\r&#xff1a;回车&#xff09; 2.缓冲区 如下图在vim编辑器中的命令模式下…

【顶刊TPAMI 2025】多头编码(MHE)之Part 6:极限分类无需预处理

目录 1 标签分解方法的消融研究2 标签分解对泛化的影响3 讨论4 结论 论文&#xff1a;Multi-Head Encoding for Extreme Label Classification 作者&#xff1a;Daojun Liang, Haixia Zhang, Dongfeng Yuan and Minggao Zhang 单位&#xff1a;山东大学 代码&#xff1a;https:…

【Leetcode】732. 我的日程安排表 III

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接&#x1f517; 当 k k k 个日程存在一些非空交集时&#xff08;即, k k k 个日程包含了一些相同时间&#xff09;&#xff0c;就会产生 k k k 次预订。 给你一些日程安排 [startTime, endTime…

Tableau数据可视化与仪表盘搭建-数据连接

连接数据有三种类型 第一种&#xff0c;连接到本地文件&#xff0c;例如Excel&#xff0c;csv&#xff0c;JSON等 第二种&#xff0c;连接到数据库&#xff0c;例如MySQL 注意&#xff1a;连接到数据库要安装对应的数据库的驱动的 连接本地文件

Chapter4.2:Normalizing activations with layer normalization

文章目录 4 Implementing a GPT model from Scratch To Generate Text4.2 Normalizing activations with layer normalization 4 Implementing a GPT model from Scratch To Generate Text 4.2 Normalizing activations with layer normalization 通过层归一化&#xff08;La…