UESTC 简介

编程学习 在大学期间,我主要学习了以下编程语言和技术: Python:用于数据分析、脚本自动化 Java:面向对象设计和大型项目开发 C/C++:系统编程和算法实现 Web 开发:HTML、CSS、JavaScript,搭建个人项目网站 项目实践 Web3 实验项目:使用区块链相关技术实现简单的去中心化应用 数据分析项目:Python + Pandas 对实验数据进行处理与可视化 课设与实验:团队协作完成 Java 和 C++ 项目,积累版本控制经验 学习心得 理论学习和实践结合,动手做项目才能加深理解 学会利用 Git/GitHub 进行版本控制和协作 多做笔记,记录学习过程中的问题与解决方案 关注新技术动态,例如 Web3、AI、云计算等 技术分享计划 定期在博客发布学习笔记与项目总结 分享代码示例和实验教程,便于同学参考 持续更新技术栈,记录成长过程

November 20, 2025 · 1 min · 31 words · Guangyang Zhong

第 2 章 线性表

线性表的定义 在稍微复杂的线性表中, 一个数据元素可以有若干个数据项组成, 常把数据元素称为记录, 含有大量记录的线性表又称为文件 表中元素的个数有限 表中元素具有逻辑上的顺序性, 均为数据元素, 数据类型都相同, 具有抽象性 注意: 线性表是一种逻辑结构 线性表的表示 顺序表 定义 逻辑顺序与其物理存储顺序完全一致 主要优点 可进行随机访问 存储密度高 主要缺点 插入和删除操作效率较低, 需要移动大量元素 要求分配连续的存储空间 基本操作的实现 顺序表的初始化 静态分配 动态分配 插入操作 时间复杂度 最好情况: 在尾标插入, O(1) 最坏情况: 在表头插入, O(n) 平均情况: O(n) 删除操作 时间复杂度 最好情况: 删除表尾元素, O(1) 最坏情况: 删除表头元素, O(n) 平均情况: O(n) 查找操作 时间复杂度 按值查找, O(n) 按索引查找, O(1) 常见算法 双指针 王道 P20 05. 倒置 王道 P20 07. 10. Boyer–Moore 投票算法 王道 P20 12. 空间换时间 王道 p21 13. ...

March 14, 2026 · 1 min · 115 words · Guangyang Zhong

第 1 章 绪论

基本概念和术语 数据: 是对客观事物的符号表示, 在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称 数据元素: 是数据的基本单位, 在计算机程序中通常作为一个整体进行考虑和处理(一个数据元素可由若干个数据项组成) 数据对象: 是性质相同的数据元素的集合, 是数据的一个子集 数据结构: 是相互之间存在的一种或多种特定关系的数据元素的集合. 包括三方面的内容: 逻辑结构, 存储结构和数据的运算 线性结构 非线性结构: 集合, 树形结构, 图状结构或网状结构 存储结构(物理结构): 数据结构在计算机中的表示(又称映像) 数据元素在计算机中的映像称为元素或结点, 例如通常用一个字长的位串表示一个整数, 通常称这个位串为元素或节点. 当数据元素由若干数据项组成时,位串中对应于各个数据项的子位串称为数据域 * 顺序存储结构(顺序映像) * 链式存储结构(非顺序映像) * 索引存储 * 散列存储(哈希存储) 算法的设计取决于选定的数据逻辑结构, 而算法的实现依赖于采用的存储结构 数据类型: 和数据结构密切相关的一个概念, 最早出现在高级程序语言中, 用以刻画(程序)操作对象的特性 原子类型 结构类型 抽象数据类型(ADT): 是指一个数学模型以及定义在该模型上的一组操作 原子类型 固定聚合类型 可变聚合类型 后两种可统称为结构类型 多形数据类型: 指其值的成分不确定的数据类型 算法和算法分析 5 个重要特性: 有穷性 确定性 可行性 输入 输出 算法的设计要求 正确性 可读性 健壮性 效率与低存储量需求 算法效率的度量 事后统计的方法 事前分析估算的方法 算法的存储空间需求 如果一个问题所占的输入数据空间是固定的、和算法无关的, 那我们在分析空间复杂度时,只需要关注算法额外使用的空间(也叫辅助空间)

February 28, 2026 · 1 min · 69 words · Guangyang Zhong

第 1 章 计算机系统概述

计算机系统的基本组成 一个完整的计算机系统由软件和硬件组成 冯.诺依曼结构的基本思想 采用"存储程序"的工作方式 计算机由运算器, 控制器, 存储器, 输入设备和输出设备 5 个基本部件组成 现代计算机结构 中央处理器 数据通路 算术逻辑单元(ALU) 通用寄存器组 控制器 存储器 外部设备和设备控制器 总线 计算机系统层次结构 包含: 算法和程序 编程语言 语言处理系统 操作系统 指令集体系结构 微体系结构 编程语言 高级语言 低级语言 机器级语言 机器语言(计算机唯一能直接识别和执行的语言) 汇编语言 翻译程序 汇编程序(汇编语言 -> 机器语言) 解释程序(高级语言 –逐条–> 机器语言) 编译程序(高级语言 –整体–> 机器语言) 程序开发与执行过程 从源程序到可执行程序 预处理阶段: 预处理器 (cpp) 处理源文件中以 # 开头的预处理指令, 生成预处理后的 C 文件 hello.i 编译阶段: 编译器 (ccl) 将 hello.i 翻译为汇编程序 hello.s 汇编阶段: 汇编器 (as) 将 hello.s 转化为机器语言指令, 生成可重定位目标文件 hello.o 链接程序: 连接器 (ld) 将 hello.o 与标准 C 库中所需的函数 (例如 printf) 进行链接, 解析外部符号引用, 最终生成完整的可执行文件 hello, 并保存至磁盘 计算机主要性能指标 基本基本 吞吐率 : 在单位时间内所完成的工作量 响应时间 : 指从作业提交开始到作业完成所用的时间 时钟周期 : 机器内部主时钟脉冲的宽度 时钟频率 : 机器内部主时钟的频率, 即时钟周期的倒数 CPI: 执行一条指令所需的时钟周期数 MIPS: 每秒执行多少百万条指令 计算能力相关指标 MFLOPS : 百万次浮点运算/秒 GFLOPS : 十亿次浮点运算/秒 TFLOPS : 万亿次浮点运算/秒 PFLOPS : 千万亿次浮点运算/秒 EFLOPS : 百亿亿次浮点运算/秒 ZFLOPS : 十万亿亿次浮点运算/秒 1s = 1000 ms = 1000000 μs = 1000000000 ns ...

February 28, 2026 · 1 min · 143 words · Guangyang Zhong

机械硬盘结构图解

核心组件解析 1. 盘片与涂层 盘片(Platter):硬盘中的圆形磁性盘片,通常为铝合金或玻璃材质 表面涂层:磁性材料涂层,用于存储数据(0和1的磁化方向) 2. 读写机制组件 旋转轴 → 盘片 → 磁道 → 扇区 ↑ ↑ ↑ ↑ spindle platter track sector 主轴(Spindle):连接所有盘片的中心轴,控制盘片旋转 旋转(Rotation):盘片以恒定角速度旋转(如7200 RPM) 读写头(Read-Write Head):在盘片表面读取和写入数据的微小电磁体 3. 定位系统 机械臂(Arm Assembly):支撑读写头的移动结构 臂(Arm):连接读写头的悬臂,可径向移动 读写头定位:机械臂带动读写头在盘片上方移动(不接触盘面) 数据组织方式 1. 几何结构层次 柱面(最大单位) ← 盘片组垂直对齐 ↓ 磁道(同心圆) ← 单个盘面上的环形区域 ↓ 扇区(最小单位) ← 磁道被等分的弧段 2. 关键术语解释 柱面(Cylinder,c):所有盘面上相同半径的磁道集合形成的"柱状"区域 磁道(Track,t):单个盘面上的一个同心圆环,数据存储的基本环形路径 扇区(Sector,s):磁道上划分的固定大小弧段(通常512字节或4KB) 工作原理 数据访问流程 寻道(Seeking):机械臂移动读写头到目标磁道上方 旋转等待(Rotational Latency):等待目标扇区旋转到读写头下方 数据传输:读写头执行读/写操作 性能参数 寻道时间:机械臂移动到目标磁道的时间 旋转延迟:盘片旋转使目标扇区到达读写头的时间 传输速率:数据在接口上的传输速度 存储密度与容量计算 容量公式 硬盘容量 = 柱面数 × 磁头数(盘面数×2)× 扇区数 × 扇区大小 现代发展 垂直记录技术:提高存储密度 SMR(叠瓦式磁记录):磁道部分重叠,增加容量但影响随机写入性能 物理特性 关键技术特点 浮动高度:读写头悬浮在盘片上方约3-5纳米处 空气轴承:盘片旋转产生空气流,保持读写头稳定悬浮 启停区:硬盘不工作时读写头停放在盘片外缘安全区 脆弱性注意事项 防震需求:运行时震动可能导致磁头撞击盘面(磁头碰撞) 温度控制:热膨胀影响磁头定位精度 灰尘防护:密封环境防止污染物进入 应用与优化 数据布局优化 外圈磁道:线性速度更快,适合存储频繁访问的数据 分区对齐:确保分区起始位置与物理扇区边界对齐 维护要点 定期碎片整理:减少寻道时间(对HDD重要) SMART监控:监测硬盘健康状态 避免频繁启停:减少机械磨损

November 20, 2024 · 1 min · 92 words · Guangyang Zhong