计算机基础知识
1.URL组成: 协议+ 服务器主机地址(域名/主机名/IP地址) + 端口 + 路径 + 参数
2.
一、网络 1
.1 UDP
1.1.1 面向报文
1.1.2 不可靠性
1.1.3 高效
1.1.4 传输方式
1.2 TCP
1.2.1 头部
1.2.2 状态机
1.3. HTTP
1.3.1 Post和 Get 的区别
1.3.2 常见状态码
1. 3.3 HTTP 首部
1.4. DNS
二、数据结构
2.1 栈(Stack)
变量和数据可以分配在栈上或堆上,具有不同的内存管理方式。
- 栈是一种线性数据结构,具有先进后出(Last-In-First-Out,LIFO)的特性。
- 栈通常用于存储局部变量和函数调用信息。在函数调用时,函数的参数、返回地址和局部变量等信息会被存储在栈上。
- 栈上的内存分配和释放是自动的,通常由编译器或解释器负责管理,无需手动进行内存分配和回收。
- 栈上的数据存储空间较小,分配速度快,但生命周期较短,不适合存储大量或动态分配的数据。
2.2 队列
2.3 链表
2.4 树
2.5 堆(Heap)
变量和数据可以分配在栈上或堆上,具有不同的内存管理方式。
- 堆是一种用于动态分配内存的区域,具有不同的内存管理方式。
- 堆上存储复杂数据结构、对象、数组等,其大小和生命周期不固定,需要手动分配和释放内存。
- 在堆上分配内存后,需要开发人员手动进行内存释放,以避免内存泄漏。
- 堆的分配和释放相对较慢,因为它涉及到操作系统内存管理的开销。
三、算法
3.1 时间复杂度
3.2 位运算
3.3 排序
3.4 链表
3.5 树
其他:
垃圾回收(Garbage Collection)机制
垃圾回收用于检测和回收不再使用的内存,以避免内存泄漏和提高程序性能。在大多数情况下,栈上的内存分配是自动的,因此无需垃圾回收,而堆上的内存分配和释放需要开发人员手动管理,或者由编程语言提供的自动垃圾回收机制(例如,JavaScript 中的垃圾回收器)来处理。
GC如何判断一个对象是否是一个垃圾?
只要这个对象 或者是这个对象包含的子对象往下递归没有任何引用, 这就是一个无效的对象
GC的优点
最要的就是程序员不用再手动释放释放内存了, 比C++简单多了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
2019-04-23 Element-UI 笔记