- 博客(23)
- 收藏
- 关注
原创 【网络】IP地址、子网掩码和默认网关
本文简明介绍了网络通信中三个核心概念:IP地址是设备的唯一标识符(如192.168.1.100),用于定位设备;子网掩码(如255.255.255.0)用于划分网络区域,区分本地和远程通信;默认网关(如192.168.1.254)是连接不同网络的出口。三者协同工作:本地通信直接送达,跨网络通信需经网关转发。
2025-09-09 11:08:17
3113
原创 【网络】TCP
优点缺点可靠性高:数据无差错、不丢失、不重复、按序到达。速度慢,延迟高:握手、确认、重传、控制机制带来巨大开销。拥有完整的传输控制机制:流量控制和拥塞控制保护了接收方和网络。首部开销大:最小20字节,远大于UDP的8字节。是互联网应用的基石:支撑了绝大多数需要可靠性的服务。不支持广播和多播:只能进行点对点通信。连接状态明确:便于管理和调试。易受攻击:如 SYN Flood 攻击利用三次握手弱点。特性TCPUDP连接性面向连接无连接可靠性。
2025-09-09 09:52:31
1195
原创 【网络】UDP
摘要: UDP(用户数据报协议)是TCP/IP协议栈中的核心传输层协议,以无连接、不可靠传输、低延迟为特点。其首部仅8字节,开销小,支持广播和多播,适用于实时音视频、在线游戏、DNS等场景。虽然UDP不保证可靠性,但为开发者提供了灵活性和高效性。现代协议(如QUIC)在UDP基础上实现可靠性,体现了其设计优势。UDP与TCP互补,分别满足低延迟与高可靠性的需求。
2025-09-07 09:26:42
1014
原创 【Ubuntu】GDP
GDB是Linux下强大的源代码调试工具,支持C/C++等多种语言。本文介绍了Ubuntu中GDB的基本使用流程和常用命令,以及如何调试崩溃的程序。
2025-09-06 11:26:23
757
原创 【Ubuntu】CMake
CMake是一个开源的、跨平台的构建系统生成器。它并不直接编译你的代码,而是根据一个名为的配置文件,为你所选的平台和编译器生成标准的构建文件。核心作用:管理代码的构建过程。工作原理:读取文件 ===> 生成构建文件 ===> 你用生成的构建文件来编译项目。生成的构建文件可以是内容:Unix/Linux上的Makefile(然后你用make命令编译)Windows上的Visual Studio项目/solution文件.vcxprojmacOS上的Xcode项目文件。
2025-09-03 08:35:39
1701
原创 【Ubuntu】APT
APT是Debian/Ubuntu系统核心的软件包管理工具,用于安装、更新和卸载软件并处理依赖关系。主要命令包括:sudo apt update更新软件包索引;sudo apt upgrade安全升级;sudo apt install安装软件;sudo apt remove/purge卸载软件;sudo apt autoremove清理无用依赖。最佳实践是先update再upgrade,定期autoremove保持系统整洁。APT通过自动解决依赖关系大大简化了Linux软件管理。
2025-09-02 16:25:23
1071
原创 08-JavaScript表单和Jquery Ajax
表单是我们页面向后台传输数据的一种非常常见的方式,在进行数据发送(请求发出)之前,我们应该现在页面进行一系列数据合法性的验证,节省不必要的错误数据的传输,以及提高用户的体验度。1.获取表单// 通过表单的name属性值获取表单对象document.表单名称// 通过from标签的id属性值获取表单对象document.getElementById(表单id);// 通过表单的name属性值获取表单对象document.forms[表单名称]// 通过指定下标获取表单元素docu
2022-02-12 22:43:45
595
原创 07-JavaScript基础三和事件
目录1.内置对象(1)String(2)Math(3)Date2.对象(1)对象的创建(2)对象的操作(3)对象的序列化和反序列化(4)this3.事件(1)事件类型(2)事件流和事件模型1.内置对象Arguments 只在函数内部定义,保存了函数的实参。 Array 数组对象。 Date 日期对象,用来创建和获取日期。 Math 数学对象。 String 字符串对象,提供对字符串的一系列操作。 (1)
2022-02-11 23:21:26
783
原创 06-JavaScript基础二
1.运算符(1)算术运算符(2)赋值和扩展运算符(3)比较运算符(4)逻辑运算符(5)三目运算符2.控制语句流程控制语句一共有三种:流程执行:从上到下,从左到右选择执行:分支选择循环执行:重复执行(1)单选择if(条件) { 语句体;}首先执行条件,如果结果为true,则执行语句体;如果结果为false...
2022-02-10 01:15:44
640
原创 05-JavaScript基础一
目录1.JavaScript2.JavaScript基础使用3.JavaScript基础语法(1)语法(2)注释(3)标识符和关键字(4)变量(5)数据类型(6)数据类型转换1.JavaScript一种具有面向对象能力的、解释型的程序设计语言。更具体一点, 是基于对象和事件驱动并具有相对安全性的客户端脚本语言。主要目的:验证发往服务器端的数据、增加Web互动、加强用户体验度等。组成:ECMAScript(基础语...
2022-02-09 23:23:27
234
原创 04-CSS常用属性和盒子模型
目录1.背景2.文本3.对齐方式(水平)4.display属性5.浮动6.盒子模型(1)border(边框)(2)padding(内边距)(3)margin(外边距)1.背景常用背景属性:background-color 设置元素的背景颜色。 background-image 设置元素的背景图像,默认情况下,背景图像进行平铺重复显示,以覆盖整个元素实体。 background-repeat 设置是否及如何重复背景图像。 bac..
2022-02-08 22:36:28
616
原创 03-CSS
1.CSS基础语法CSS样式由选择器和一条或多条以分号隔开的样式声明组成。每条声明的样式包含着一个CSS属性和属性值。选择器名{ 属性: 属性值; ······}注意: CSS声明要以分号;结束,声明以{}括起来;建议一行书写一个属性;若值为若干单词,则要给值加引号,如font-family: "agency fb";2.CSS的使用(1)行内式行内样式将样式定义在具体ht...
2022-02-06 14:49:58
562
原创 02-表单、input、常用字符实体
目录1.表单标签2.input3.表单元素(1)textarea:文本域(2)label:标签(3)button:按钮(4)select:下拉列表4.常用字符实体5.实例1.表单标签 <form>标签用于为用户输入创建HTML表单。表单能够包含input元素,比如文本字段、复选框、单选框、提交按钮等等,还可以包含textarea等元素。表单用于向服务器传输数据。form元素是块级元素,其前后会产生折行。...
2022-02-05 21:31:59
391
原创 01-常用标签
1.常用标签一(1)标题标签标题(Heading)是通过<h1>~<h6>标签进行定义的。<h1>定义最大的标题,<h6>定义最小的标题,h1~h6大小依次递减。将h1用作主标题(最重要的),其后是h2(次重要的),再其次是h3,以此类推。<h1>标题1</h1><h2>标题2</h2><h3>标题3</h3><h4>标题4</h4&g...
2022-02-04 18:24:02
773
原创 Python——定时器
1.定时器Timer定时器源码实现,和自定义一个线程方式一样,都是继承Thread类,重写了run()方法,只是实现的功能是延时执行一个函数或方法。线程定时器(Timer)解释:Timer类是Thread的子类,只加入了时间延迟功能。 Thread和Timer对象都用start()方法启动。 启动Timer后,等于单独启动一个线程,为非阻塞的。Timer 的两种用法:正常用法:启动后,延时执行函数或方法。特殊用法:每隔n秒,执行一次函数或方法,就是不...
2022-01-22 20:47:10
10311
原创 Python——信号量、条件变量、事件
1.信号量(Semaphore)信号量通常用于保护数量有限的资源,例如数据库服务器。在资源数量固定的任何情况下,都应该使用有界信号量。在生成任何工作线程前,应该在主线程中初始化信号量。信号量提供acquire方法和release方法,每当调用acquire方法的时候,如果内部计数器大于0,则将其减1,如果内部计数器等于0,则会阻塞该线程,知道有线程调用release方法将内部计数器更新到大于1位置。信号量也是一把锁,用来控制线程并发数。信号量通过一...
2022-01-21 23:58:45
1862
原创 Python——多线程
1.多线程多线程类似于同时执行多个不同程序。(1)多线程运行有如下优点:使用线程可以把占据长时间的程序中的任务放到后台去处理; 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度; 程序的运行速度可能加快; 在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下我们可以释放一些珍贵的资源如内存占用等等。(2)进程→程序线程在执行过程中与进程还是有区别的:每个...
2022-01-20 23:50:52
695
原创 Python——类的方法重写、property、运算符重载
1.super()函数主要是用来调用父类的方法,在子类中调用父类的方法时进行使用。2.私有方法、私有属性在类的内部,使用 def 关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数 self,且为第一个参数__private_method:两个下划线开头,声明该方法为私有方法,不能在类的外部调用。在类的内部调用 self.__private_methods。__private_attrs:两个下划线开头,声明...
2022-01-20 17:38:47
1296
原创 SVM算法(Support Vector Machine)
支持向量机(support vector machines,SVM)是一种二分类模型,它将实例的特征向量映射为空间中的一些点,SVM 的目的就是想要画出一条线,以 “最好地” 区分这两类点,以至如果以后有了新的点,这条线也能做出很好的分类。SVM 适合中小型数据样本、非线性、高维的分类问题。
2021-11-20 22:00:42
8851
原创 kNN算法(k近邻算法,k Nearest Neighbor)
主要内容:1.认识kNN算法2.kNN算法原理3.应用举例4.kNN改进方法1.认识knn算法“看一个人怎么样,看他身边的朋友什么样就知道了”,kNN算法即寻找最近的K个数据,推测新数据的分类。kNN算法可以说是最简单的分类算法之一,也是最常用的分类算法之一。 特点 kNN是一种非参的,惰性的算法模型。 非参即这个模型不会对数据做出任何的假设,与之相对的是线性...
2021-08-24 23:12:03
662
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅