自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Atticus的博客

C、Python、Linux、HTML、CSS、PS、Pr技术开拓者

  • 博客(1022)
  • 资源 (38)
  • 收藏
  • 关注

原创 一小时学会用Opencv做贪吃蛇游戏(Python版)

使用Mediapipe参考资料21 hand landmarks水平镜像处理import cvzoneimport cv2import numpy as npfrom cvzone.HandTrackingModule import HandDetectorcap = cv2.VideoCapture(0) # 0代表自己电脑的摄像头cap.set(3, 1280) # 宽cap.set(4, 720) # 高detector = HandDete

2022-03-05 20:04:17 25887 16

原创 人工智能之主观贝叶斯方法及贝叶斯公式附加相关习题

概率论基础条件概率全概率公式基本贝叶斯公式产生式规则:IF E THEN Hi主观贝叶斯的基本思想知识不确定性的表示所以几率函数就是把p(x)放大了证明关于LN的公式推导思路 LS和LN的性质证据不确定性的表示1、单个证据不确定性的表示方法不确定性推理计算确定性证据以上两个公式的推导过程分别如下结论不确定性的合成和更新算法1、结论不确定性的合成算法2、结论不确定性的更新算法其思想是,按照顺序使用规则对先验概率进行更新,再把得到的更新概率当做先验概率,

2020-11-10 19:22:44 13446 6

原创 打飞机游戏C语言重构函数封装(进阶版)

代码重构#include<stdio.h>#include<stdlib.h>#include<conio.h>int x, y;int high, width;void startup(){ high = 20; width = 30; x = high / 2; y = width / 2;}void show(){ sy...

2020-05-04 10:39:55 3159 2

原创 Leetcode—620. 有趣的电影&&Q3. 有趣的电影【简单】

摘要:本文分享了Leetcode第620题"有趣的电影"的SQL解法。通过筛选奇数ID且非无聊描述的电影,并按评分降序排列,实现代码简洁高效。运行结果截图展示了查询效果。作者表示将持续更新解题内容,并感谢读者的支持与关注。

2025-12-23 11:58:03 27

原创 Leetcode—181. 超过经理收入的员工&&Q2. 超过经理收入的员工【简单】

这篇文章分享了LeetCode第181题"超过经理收入的员工"的SQL解法。题目要求找出收入高于其经理的员工。解决方案使用子查询比较员工与其经理的薪资,主查询筛选出薪资高于对应经理的员工记录。代码简洁高效,通过自连接实现了这一需求。文章包含题目描述、实现代码和运行结果截图,并预告将持续更新相关内容。作者鼓励读者点赞关注收藏以支持其持续创作。该SQL解法核心思路是利用子查询获取经理薪资,然后与员工薪资进行比较筛选。

2025-12-23 11:49:36 178

原创 goframe框架签到系统项目(路由管理、中间件、获取请求参数、返回响应、配置管理、日志、错误处理、数据校验、数据库ORM、缓存、解决go mod tidy运行后也还是红线)

本文介绍了GoFrame框架中的路由管理和中间件使用。路由管理主要分为两种方式:分组绑定路由(自动生成请求路径)和直接绑定路由处理器。中间件采用洋葱模型,支持全局和分组注册,包含处理前、业务处理、处理后三个阶段。文章重点演示了鉴权中间件的实现,通过token验证请求权限,并展示了全局中间件的注册方法。同时提供了SSH端口转发配置示例,用于本地调试远程服务。

2025-12-21 09:38:53 583

原创 goframe框架签到系统项目(BITFIELD 命令详解、Redis Key 设计、goframe 框架教程、安装MySQL)

Redis BITFIELD命令详解摘要: BITFIELD是Redis 3.2引入的高级位操作命令,支持对位图进行复杂的位级操作。核心特性包括:多字段原子操作、多种整数类型支持(u8/u16/u32/u64)、三种溢出控制策略(WRAP/SAT/FAIL)。通过GET/SET/INCRBY子命令,可实现对位图的精确读写操作。典型应用场景包括:精确计数器(如点赞数)、状态压缩存储(用户权限)、时间序列数据(日活统计)和用户画像标签。性能方面,BITFIELD时间复杂度为O(N),适合处理小规模位数据,但需注

2025-12-19 11:27:44 687

原创 goframe框架签到系统项目(需求说明、Prompt 相关(AI 辅助开发)、后端技术方案设计、RESTful API、数据表设计、安装 Redis、Redis Bitmap)

本文详细介绍了互联网产品中签到功能的设计与实现方案。主要内容包括:1)功能定位与表现形式,签到作为用户激励体系核心组件,可分为基础型、场景化和游戏化三种形式;2)设计目标体系,从用户、产品和商业三个维度分析签到功能的价值;3)体验设计原则,强调高价值感知与低成本操作的平衡;4)具体实现方式,包括手动、自动和互动三种签到模式,以及周期奖励机制;5)技术实现方案,包含前后端架构设计、数据库表结构和RESTful API接口规范。该方案适用于需要提升用户活跃度的内容驱动型产品,提供了完整的开发指导和技术实现路径。

2025-12-16 22:45:16 970

原创 分布式缓存-GO(简历写法、常见面试题)

本文介绍了分布式缓存系统LCache的项目经验和技术要点。项目基于Go语言实现,重点解决了分布式环境下的高性能缓存问题。主要内容包括:实现了LRU/LRU2缓存淘汰算法、自适应一致性哈希算法、分段锁和两级缓存结构优化高并发性能,基于etcd的服务注册发现机制,以及gRPC通信协议保证数据一致性。文章还包含常见面试题解析,如缓存概念、缓存算法(附LRU实现代码)和系统架构说明。通过该项目,作者深入掌握了分布式系统设计原则、高并发编程技术以及缓存优化策略。

2025-12-16 10:18:16 934

原创 分布式缓存-GO(分布式算法之一致性哈希、缓存对外服务化)

一致性哈希是一种分布式负载均衡算法,通过将节点和键映射到哈希环上,解决了传统取模分片在节点增减时数据大规模迁移的问题。该算法只需在节点变化时重新定位附近少量数据,提高了系统扩展性。GoCache实现中采用虚拟节点解决数据倾斜问题,核心数据结构包含哈希环、节点映射和请求统计。通过二分查找快速定位目标节点,同时支持动态增删节点,有效减少了缓存失效和存储浪费,提升了分布式缓存系统的性能和稳定性。

2025-12-12 17:25:39 736

原创 100 Go Mistakes(#4 过度使用getter和setter、#5 接口污染)

Go语言中接口与getter/setter的使用建议 文章探讨了Go语言中接口和getter/setter的使用原则。对于getter/setter,Go不强制使用,应基于实际需求权衡封装与简洁性。接口部分指出:1)接口应自然发现而非刻意创造;2)标准库中的io.Reader/Writer展示了良好抽象;3)使用接口的三个场景:多个类型共享行为、解耦具体实现、限制类型行为。特别强调避免"接口污染"——即创建不必要的抽象层。测试示例展示了如何通过接口提高代码可测试性,体现了Go追求实用而非

2025-12-07 10:09:23 726

原创 分布式缓存-GO(项目整体架构简介、Ubuntu 22.04 64位安装GoLang、安装Docker、解决Go module 的依赖问题)

本文介绍了分布式缓存系统GoDistributeCache的设计与实现。该项目基于groupcache架构,支持本地缓存和分布式缓存两种模式。文章首先阐述了缓存的基本概念及其应用场景,分析了在浏览器、CDN、代理服务器等多层级架构中缓存的部署位置。重点对比了本地缓存(访问速度快)与分布式缓存(数据一致性高)的特点,并提出了多级缓存方案。项目实现了缓存穿透、击穿和雪崩的防护机制,采用一致性哈希算法进行节点选择。通过该项目可以学习到Go语言并发编程、RPC通信、缓存淘汰策略等核心技术,适合作为分布式系统的入门实

2025-12-06 09:55:25 2073

原创 100 Go Mistakes(#1 意想不到的变量隐藏、#2 不必要的嵌套代码、#3 滥用 init 函数)

Go语言编程实践摘要 本文探讨了Go语言中的三个关键编程实践问题: 变量隐藏问题:内部代码块重新声明同名变量可能导致引用错误。建议避免变量隐藏,采用不同变量名或显式赋值方式(如listing2/3/4示例)。 减少代码嵌套:通过左对齐执行流程和尽早返回(如join2函数)可显著提升代码可读性,相比多层嵌套的join1函数更易理解。 慎用init函数:init函数存在错误处理局限且影响测试,推荐使用显式初始化函数(如createClient)。全局变量初始化顺序为:常量/变量→init函数→main函数,如r

2025-12-05 22:52:17 850

原创 GoLang并发示例代码2(关于逻辑处理器运行顺序)

本文演示了Go语言中goroutine调度器在单线程下的时间片轮转机制。程序通过设置runtime.GOMAXPROCS(1)限制使用1个逻辑处理器,创建两个goroutine分别打印5000以内的质数。使用sync.WaitGroup同步等待goroutine完成。结果显示两个goroutine交替执行,验证了Go调度器在单线程环境下对goroutine的时间片轮转调度。代码展示了Go并发编程的基本模式,包括goroutine创建、同步等待以及素数计算逻辑。通过该示例可以直观理解Go调度器的工作机制。

2025-12-05 21:24:20 193

原创 GoLang并发示例代码1(关于逻辑处理器运行顺序)

本文演示了Go语言中goroutine的创建和调度器行为。程序通过设置runtime.GOMAXPROCS(1)限制为单线程执行,使用sync.WaitGroup同步两个goroutine:一个打印小写字母表3次,另一个打印大写字母表3次。实验发现,在单核模式下执行顺序固定(先大写后小写),而设置runtime.GOMAXPROCS(2)后执行顺序变得不确定。这展示了Go调度器在单核和多核环境下的不同行为特点,单核环境遵循确定的调度顺序,而多核环境下goroutine的执行顺序可能随机变化。

2025-12-04 22:25:14 166

原创 GoLang并发简单例子(goroutine + channel + WaitGroup)

本文展示了一个使用Go语言WaitGroup和channel的并发编程示例。代码创建了一个无缓冲channel,启动一个printer协程通过channel接收并打印数据。主协程向channel发送10个整数后关闭通道,使用WaitGroup等待printer协程完成。关键点包括:1)无缓冲channel的同步特性;2)WaitGroup用于协程同步;3)协程间通过channel通信。该示例演示了Go语言中基本的并发控制和协程间通信机制。

2025-12-03 15:33:02 248

原创 GoLang写一个火星漫游行动

本文展示了一个模拟火星探测车系统的Go语言实现。系统包含多个探测车(RoverDriver)在一个火星网格(MarsGrid)上移动。探测车通过goroutine并发运行,每250毫秒尝试移动,遇到障碍时会随机改变方向。网格使用互斥锁保证线程安全,防止多个探测车同时占据同一位置。v2版本增加了火星与地球之间的通信通道。代码展示了并发控制、通道通信和资源管理在模拟系统中的应用。

2025-12-01 12:31:04 263

原创 GoLang写一个简单版生命游戏模拟器

这篇文章展示了一个用Go语言实现的康威生命游戏模拟器。程序创建了一个80x15的二维网格世界,随机初始化细胞状态,并按照生命游戏规则进行300代演化。主要功能包括:创建空白世界、随机播种细胞、计算细胞存活状态、显示当前世界状态以及实现代际演化。程序每1/30秒刷新一次屏幕,通过交替使用两个世界对象来存储当前和下一代状态。代码结构清晰,包含了细胞状态设置、邻居计数、下一代计算等核心功能,最终在控制台输出动态演化的细胞图案。

2025-11-26 22:05:58 249

原创 Qt6 学习——一个Qt桌面应用程序

本文介绍了Qt6的安装与使用指南。主要内容包括:1)Qt6的安装步骤图示;2)Qt6 UI开发界面展示;3)创建新项目的完整流程截图;4)CMakeLists.txt配置模板,包含项目设置、Qt6依赖引入、可执行文件生成及安装配置。文章通过大量截图直观展示Qt开发环境搭建过程,并提供了标准的CMake项目配置示例,适合Qt初学者快速入门。

2025-10-26 20:14:46 611

原创 分析UE4.26 insights源码: Source/Runtime/Core/Public/ProfilingDebugging/CpuProfilingTrace.h

文章摘要介绍了浏览器回退快捷键(Alt+←或Backspace)和UnrealEngine源码相关内容。主要内容包括:1. 提供UnrealEngine 4.26版本的git下载命令;2. 展示C++源码文件(FCpuProfilerTrace结构体),其中定义了CPU性能分析相关的追踪功能;3. 说明如何使用宏TRACE_CPUPROFILER_EVENT_SCOPE_ON_CHANNEL来追踪CPU事件。该代码主要用于UnrealEngine开发中的性能分析模块。

2025-10-11 17:05:01 285

原创 GAMES101:现代计算机图形学入门(Chapter5 光栅化1(三角形遍历))迅猛式学习笔记(附Homework 0+Windows环境下vscode第三方库Eigen3配置教程)

本文介绍了GAMES101课程的作业0内容,主要包括Eigen库的使用和矩阵变换操作。通过C++代码示例展示了基本的向量运算(加减、数乘)、矩阵运算(加减、数乘、矩阵乘法)以及角度弧度转换等数学操作。文章还提供了环境配置说明(安装Eigen库)和CMake编译配置,并给出了一个将点(2,1)绕原点逆时针旋转45度的矩阵变换作业任务。通过代码截图和公式推导,演示了如何利用齐次坐标和旋转矩阵实现二维空间中的旋转变换。

2025-10-06 18:46:19 753

原创 GAMES101:现代计算机图形学入门(Chapter4 变换进阶篇)迅猛式学习笔记

本文介绍了3D图形学中的关键变换方法,包括旋转矩阵的性质、3D变换原理、视图/相机变换和投影技术。重点阐述了旋转矩阵的逆等于其转置的特性(正交矩阵),详细推导了3D空间中绕任意轴旋转的罗德里格斯公式。在视图变换部分,解释了如何将相机和物体位置统一变换到标准坐标系,保持相对位置不变。最后比较了正交投影和透视投影的特点,指出透视投影能实现近大远小的视觉效果。文章结合数学公式和几何图解,系统讲解了3D图形变换的核心概念和实现方法。

2025-10-03 19:30:00 572

原创 GAMES101:现代计算机图形学入门(Chapter3 变换)迅猛式学习笔记

摘要 本文介绍了二维图形变换的基本原理,包括线性变换(缩放、镜像、切变、旋转)和非线性变换(平移)。通过矩阵运算实现坐标变换,其中缩放、镜像等操作可直接表示为线性变换矩阵。为解决平移变换的非线性特性,引入了齐次坐标系统,将平移转换为矩阵乘法形式。文章还对比了逆运动学与正运动学的概念,并通过图示展示了各种变换的数学表达和实际应用效果。

2025-10-02 15:31:48 391

原创 GAMES101:现代计算机图形学入门(Chapter2 向量与线性代数)迅猛式学线性代数学习笔记

本文介绍了计算机图形学中的基础数学知识,重点讲解了向量的基本概念和运算方法。主要内容包括:向量的标准化处理、向量加法运算;笛卡尔坐标系下的向量表示;向量的点乘(可用于判断向量方向关系)和叉乘(用右手定则确定方向)的计算方法及应用场景,如判断点的位置关系(是否在三角形内部)。此外,还介绍了正交坐标系的构建原理。这些数学工具是图形学中几何计算和渲染算法的重要基础。

2025-09-20 19:50:54 450

原创 游戏性能中的知识

本文介绍了虚幻引擎(UE)中的PVS(潜在可见集合)技术及其应用。PVS通过预计算场景可见性优化渲染性能,减少不可见物体的渲染开销。文章分析了PVS在静态场景中的优势,同时指出其对动态物体的局限性,并探讨了相关调试指令和内存管理问题。此外,还解释了GPU带宽对性能的影响,以及PVS在动态游戏场景中的适用性考量。最后提及了内存泄漏检测的重要性,为游戏性能优化提供了实用指导。

2025-09-20 16:02:12 780

原创 Jank卡顿及stutter卡顿率说明

FrameTime(帧时间)指两帧画面渲染间隔,直接影响画面流畅度。当FrameTime超过显示器刷新间隔(如60Hz下16.67ms)时,会导致画面卡顿。高FrameTime通常由GPU负载过高、CPU处理延迟或内存带宽不足等因素引起。FPS(帧率)反映每秒画面刷新次数,但高FPS不一定流畅,关键在帧时间稳定性。iOS和Android通过垂直同步(V-Sync)技术协调GPU与显示器刷新,避免画面撕裂,但可能引入延迟。视觉惯性和电影帧率(24fps)表明,帧率稳定性比绝对值更重要,低于临界值会产生明显卡顿

2025-09-16 11:21:36 1029

原创 GAMES101:现代计算机图形学入门(Chapter1 计算机图形学概述)学习笔记

本文介绍了计算机图形学在多个领域的应用技术。游戏领域重点讲解了全局光照技术(直接光照+间接光照)和卡通渲染的两种风格(美式渐变与日式色块);影视领域涉及特效制作流程、面部动作捕捉、毛发渲染和物理模拟动画;产品设计主要介绍CAD技术;可视化技术阐述数据图形化处理方法;虚拟/增强/混合现实技术(VR/AR/MR)分别说明其沉浸式体验特点;最后还涉及图形用户界面(GUI)和字体排印技术。这些应用展现了计算机图形学如何通过算法实现逼真渲染和交互体验。

2025-09-14 16:54:49 713

原创 Leetcode—2749. 得到整数零需要执行的最少操作数【中等】(__builtin_popcountl)

本文介绍了LeetCode 2749题的解题思路和实现代码。题目要求计算将整数num1减至零所需的最少操作次数,每次操作可以减去num2加上2的幂次方。通过枚举0到60次操作,检查剩余值target的二进制1的个数是否不超过操作次数,且target不小于操作次数。代码使用__builtin_popcountl计算二进制1的个数,满足条件时返回操作次数,否则返回-1。文章配有运行结果截图,并附有作者鼓励持续更新和点赞支持的提示。

2025-09-05 23:48:46 536

原创 Leetcode—721. 账户合并【中等】

本文介绍了LeetCode 721题「账户合并」的解法,使用并查集数据结构高效合并相同用户的邮箱账户。通过构建邮件到索引的映射和按索引分组邮件的映射,实现账户合并。最终将合并结果按用户名排序输出。代码采用带路径压缩和按秩合并的优化并查集,时间复杂度接近线性。运行结果验证了算法的正确性。文章结尾鼓励读者点赞关注支持作者持续更新内容。

2025-09-05 23:07:33 774

原创 Leetcode—3516. 找到最近的人【简单】

本文介绍了LeetCode 3516题的解决方案,该题要求找出离给定数字z最近的两个数字x或y。实现代码通过比较x和y与z的绝对差值,返回2(y更近)、1(x更近)或0(距离相等)。代码简洁高效,运行结果正确。作者表示将持续更新解题内容,并鼓励读者点赞关注支持。该方案适用于基础的数值比较问题,展现了简单的算法实现思路。

2025-09-04 23:09:29 217

原创 Leetcode—417. 太平洋大西洋水流问题【中等】

本文介绍了LeetCode 417题"太平洋大西洋水流问题"的解法。该问题要求找出矩阵中能同时流向太平洋和大西洋的坐标点。解法采用深度优先搜索(DFS),分别从矩阵四边(代表两洋边界)进行逆向搜索,标记可达区域,最后求两洋可达区域的交集即为答案。代码实现中使用了递归DFS遍历,通过两个二维数组分别记录太平洋和大西洋的可达性。时间复杂度为O(mn),空间复杂度为O(mn)。运行结果正确通过了所有测试用例。

2025-09-04 22:58:31 833

原创 Leetcode—695. 岛屿的最大面积【中等】

本文介绍了LeetCode第695题"岛屿的最大面积"的深度优先搜索(DFS)解法。代码实现了二维网格中连接岛屿的最大面积计算,通过递归DFS遍历相邻的1(陆地),访问后标记为2避免重复计算。算法时间复杂度为O(mn),空间复杂度O(mn)。运行结果截图显示程序正确执行,作者表示将持续更新算法题解,欢迎读者点赞关注支持。

2025-09-03 12:18:50 355

原创 Leetcode—1254. 统计封闭岛屿的数目【中等】

该文章介绍了LeetCode第1254题"统计封闭岛屿的数目"的解法。通过深度优先搜索(DFS)算法遍历二维网格,标记已访问的陆地,并使用flag变量判断岛屿是否被边界包围。核心思路是遍历每个未访问的陆地单元格,若DFS过程中未触及网格边界则计数为封闭岛屿。代码实现简洁,运行结果正确,最后作者鼓励读者点赞关注支持后续更新。

2025-09-03 11:26:48 150

原创 网络流量分析——熟悉Wireshark

本实验指导用户使用Wireshark进行网络流量分析。主要内容包括:1)熟悉Wireshark图形界面和工具栏功能;2)设置捕获过滤器仅监控特定主机的流量;3)通过访问pepsi.com和apache.org生成流量,观察HTTP/HTTPS协议差异;4)分析数据包回答会话建立、应用协议及明文信息等问题;5)提供DNS和TLS过滤示例及常用命令备忘单。实验旨在帮助用户掌握Wireshark基本操作,包括接口选择、过滤器设置和流量分析技巧,为进一步网络诊断打下基础。

2025-09-01 23:24:41 1842 2

原创 【百度】C++开发(25届提前批 一面)面经

当缓存中不存在某个键时,使用 put(key, value),可以通过哈希表快速将新节点插入双向链表,并将其键值存入哈希表;如果缓存满了,也可以通过哈希表在 O(1) 时间内定位到需要删除的节点,并将其从链表和哈希表中移除。例如,当你调用 get(key) 时,不需要遍历链表来查找,而是直接通过哈希表找到节点。通过哈希表,避免了链表的线性查找。

2025-08-31 22:45:50 861

原创 第4章从一条记录说起-InnoDB记录结构

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

2025-08-31 22:44:57 216

原创 【CVTE】C++开发 (提前批一面)

使用Protocol Buffers(protobuf)定义服务和消息格式,描述客户端可以调用的远程方法。定义文件通常是.proto格式。内存泄漏(Memory Leak)和堆栈溢出(Stack Overflow)是两种常见的程序错误,它们都与程序的内存管理有关,但发生的原因和后果不同。下面我们将分别解释这两者。!!

2025-08-31 22:44:22 635

原创 第3章 乱码的前世今生-字符集和比较规则

2025-08-31 22:43:56 604

原创 第2章 MySQL的调控按钮-启动选项和系统变量

MySQL系统变量与连接查询摘要 本文介绍了MySQL系统变量的查看与设置方法,以及基础的表连接操作。通过SHOW VARIABLES命令可以查看默认存储引擎、最大连接数等系统配置,使用SESSION和GLOBAL关键字区分会话和全局变量级别,并能通过SET动态修改会话变量。在连接查询部分,演示了如何创建测试表t1和t2,通过交叉连接产生笛卡尔积(9条记录),并展示了使用表名前缀或直接列名两种方式来指定查询字段。这些操作涵盖了MySQL数据库基础配置管理和多表查询的核心知识点。

2025-08-31 22:43:32 204

原创 网络流量分析——使用Wireshark进行分析

Wireshark是一款功能强大的开源网络流量分析工具,支持多平台和多种接口类型的数据捕获。文章介绍了Wireshark的图形界面和命令行版本TShark的使用方法,包括基本命令选项、捕获数据包、应用过滤器等操作。同时推荐了Termshark这一终端版Wireshark工具,为无图形界面的环境提供类似Wireshark的分析体验。文章还提供了Windows和Linux系统下的安装指南,帮助用户快速上手这些网络分析工具。

2025-08-31 22:41:43 1631

6-8 关系模式的分解.pdf

数据库中关于关系模式的知识,涉及到模块分解以及相关定义性质,还有算法练习,内涵公理系统的有效性已经相应的推理规则,适合初学者以及数据库爱好者学习,有效掌握数据库关系模式这一块的知识

2020-04-23

通讯录的制作.docx

这是数据结构课设报告,关于制作通讯录的任务:针对所在班集体中的“人名”,设计一个哈希表,使得平均查找长度不超过R,完成相应的建表和查找过程。该文档中内含详细的功能介绍、程序分析、伪代码以及实现整套操作的详细可执行代码

2020-04-27

嵌入式系统概述.ppt

嵌入式系统的定义 嵌入式系统的特点 硬件抽象层(Hardware Abstraction Layer,HAL):位于操作系统和硬件之间,通过特定的上层接口与操作系统进行交互,向操作系统提供底层的硬件信息;并根据操作系统的要求完成对硬件的直接操作 嵌入式系统硬件基本组成 板级支持包(Board Support Package,BSP)是现有的大多数商用嵌入式操作系统实现可移植性所采用的一种方案,是硬件抽象层一种实现 实时多任务操作系统(Real Time multi-tasking Operation System,RTOS)简称实时操作系统,主要用来完成嵌入式实时应用任务调度和控制等核心功能

2020-11-26

嵌入式系统设计基本概念.ppt

嵌入式系统中的处理器通常分为四大类:微处理器(Micro-Processor Unit,MPU)、微控制器(Micro-Controller Unit,MCU)、数字信号处理器(Digital Signal Processor,DSP)、嵌入式片上系统(System On Chip,SoC) 嵌入式微控制器又称单片机,顾名思义,就是将整个计算机系统集成到一块芯片中。 存储器类别:SRAM、DRAM、EEPROM、Flash、NVRAM、ROM、PROM、EPROM 通信接口:UART、USB、Bluetooth μC/OS-Ⅱ、VxWorks、iOS、Palm OS、Windows CE

2020-11-27

ARM处理器编程模型与指令系统.ppt

ARM指令集:数据处理指令、跳转指令、Load/Store指令、程序状态寄存指令、协处理器指令、异常中断指令、移位指令

2020-11-27

设备驱动程序.ppt

设备驱动程序 网络驱动程序体系结构 设备文件接口 中断处理 在嵌入式操作系统下的设备驱动程序主要是控制和管理下层物理设备的硬件控制器,同时为上层应用提供统一的、与设备无关的系统调用服务,实现设备无关性。设备驱动程序通常包含中断处理程序和设备服务子程序2部分。 Linux内核还需要一对被称为主设备号和次设备号的参数,才能唯一地标识设备。

2020-11-29

基于OMAP5912的开发应用实例.ppt

MAP5912的结构和特点 直接存储器访问控制器(DMA):直接存储器访问控制器(Direct Memory Access,DMA)可以在没有MPU(微处理器)干预的情况下实现存储空间中不同位置间的数据传递。这种数据传递的数据源和数据目的地可以是片内存储器、片外存储器以及各种系统外设,它们都伴随在MPU的操作中。通过使用DMA,可以减小系统进行大量数据传递时对MPU处理器所造成的工作负荷。 基于OMP5912的硬件平台设计:电源管理模块、存储模块、音频处理模块、外围接口 基于OMP5912的软件平台设计 Bootloader及其移植

2020-11-30

麦克风阵列的理解以及语音识别相关知识.docx

关于麦克风阵列的概述以及涉及到语音识别的技术背景 麦克风阵列技术 (1) 定义:是一组位于空间不同位置的全向麦克风按一定的形状规则布置形成的阵列,对声场的空间特性进行采样并滤波的系统。采集到的信号包含了其空间位置信息。狭义概念,特指应用于语音处理的按一定规则排列的多个麦克风系统,也可以简单理解为2个以上麦克风组成的录音系统。

2020-10-24

png2bmp&mask.exe

自动生成遮罩图片的程序及源代码,可用于使某人物、事物融入不同背景,将图片无缝对接进别的图片。将带有透明图层的png格式图像选择,拖动到png2bmp&mask.exe上。 只支持png格式,只能针对透明图层,生成的文件为bmp格式。 一次可以拖动多个文件。 注意,因为easyx不支持透明图层,所以为了保留所有细节,如果原图含有半透明的部分,我会将其转换为不透明。

2020-08-19

自动生成遮罩图的程序

将带有透明图层的png格式图像选择,拖动到png2bmp&mask.exe上。 只支持png格式,只能针对透明图层,生成的文件为bmp格式。 一次可以拖动多个文件。 注意,因为easyx不支持透明图层,所以为了保留所有细节,如果原图含有半透明的部分,我会将其转换为不透明。

2020-08-19

传输层知识.pptx

“数据链路层”当作局域网通信的数据传输通道,而“传输层”则是广域网中的数据传输通道。 “传输层”既是面向通信部分的最高层,它与下面的三层一起共同构建进行网络通信所需的线路和数据传输通道的建立,同时又是面向用户的最低层,因为无论何种网络应用,最终都是需要把各种数据报传送到对方。 “传输层”是源端到目的端对数据传送进行控制从低到高的最后一层,最终目标就是向它的用户(应用层中的应用进程)提供高效、可靠和性价比合理的服务。 面向连接的传输服务是可靠的传输服务,而且可提供拥塞控制和差错控制功能,如TCP协议提供的传输服务。无连接的传输服务在提供服务前不需要建立专门的传输连接,直接向目的节点发送数据UDP

2020-12-03

嵌入式操作系统.ppt

嵌入式系统的进程管理:进程调度、上下文切换...... 非抢占式调度算法常用于那些任务需要按照预先确定的顺序进行执行,且只有当任务主动放弃CPU资源后,其他任务才能得到执行的情况。常用的非抢占式调度算法是时间片轮转调度算法 在抢占式调度算法中,正在运行的任务可能被其他任务所打断。在非抢占式调度算法中,一旦任务开始运行,该任务只有在运行完成而主动放弃CPU资源,或是因为等待其它资源被阻塞的情况下才会停止运行。 典型的抢占式调度算法是基于优先级的可抢占调度算法。 进程间通信机制 嵌入式操作系统的中断处理 嵌入式操作系统的内存管理

2020-11-28

嵌入式Linux开发环境及其在ARM上的移植.ppt

Linux系统移植的一般步骤:(1)开发环境的搭建(2)系统引导(3)内核引导(4)设备驱动程序(5)文件系统 Binutils工具包 gcc编译器执行过程:预处理(预编译,Preprocessing)编译(Compilation)汇编(Assembly)链接(Linking) 嵌入式Linux内核功能结构图 嵌入式Linux内核裁剪方法 Bootloader就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境

2020-11-29

用户图形接口GUI.ppt

嵌入式系统中的GUI 嵌入式GUI的功能特点:输入/输出硬件设备、图形原语、图形文件格式 、字符集和字体、窗口和控件集合 Qt/Embedded基础 关于触摸屏的校准 :由于触摸屏接口实现类是从特殊的类QCalibratedMouseHandler继承的,已经实现了坐标的校准,一般直接读取坐标的位置和状态即可。 Qt/Embedded具有采用FrameBuffer作为底层图形接口、能够运行在被Linux支持的所有处理器上、可实现图形加速、采用组件化编程机制等特点。 Qt/Embedded的窗口系统采用一种客户/服务器体系结构。一个典型的嵌入式Qt窗口系统一般包括:一个服务器进程、一个或多个客户

2020-11-30

基于ARM的处理器体系结构.ppt

ARM微处理器特点 Load/Store结构:处理器只处理寄存器中的数据。独立的load和store指令用来完成数据在寄存器和外部存储器之间的传送。因为访问存储器很耗时,所以把存储器访问和数据处理分开。这样有一个好处,就是可反复地使用保存在寄存器中的数据,而避免多次访问存储器,从而达到提高程序执行性能的目的。 ARM流水线 ARM微处理器的寄存器组织 ARM微处理器的指令分类与格式 ARM指令寻址方式

2020-11-27

计算机网络概述.pptx

计算机网络的定义 计算机网络的发展历史 计算机网络的基本组成 局域网、城域网和广域网 按计算机网络的管理模式可以分为对等网(Peer-to-Peer,PTP)和C/S(Clent/Server,客户机/服务器)网 按网络传输方式划分为“点对点传输网络”(数据链路层)和“广播式传输网络”(一对多)两种。 计算机网络拓扑结构 无线局域网的两种拓扑结构

2020-12-04

数制与编码.pptx

常见数制类型及表示方法 不同数制间的相互转换:十进制转换为二进制、十进制转换成八进制、十进制转换成十六进制、非十进制数之间的相互转换 二进制逻辑运算 二进制数的四种表示形式:原码、补码、反码、移码 补码的加减法运算

2020-12-03

基于S3C6410的开发应用实例.ppt

S3C6410的结构和特点 S3C6410是 SAMSUNG公司基于ARM1176的16/32位的高性能低功耗的RSIC通用微处理器,适用于手持、移动等终端设备。 S3C6410为2.5G和3G通信服务提供了优化的硬件性能,采用64/32bit的内部总线架构,融合了AXI、AHB、APB总线。还有很多强大的硬件加速器,包括运动视频处理、音频处理、2D加速、显示处理和缩放。 S3C6410芯片架构 MAP5912的结构和特点 基于S3C6410的视频监控系统设计 视频监控系统硬件主要由Tiny6410开发板、USB摄像头、SD卡和远程客户端组成。

2020-11-30

WRK以及相关的分析工具.7z

适用于《Windows内核原理与实现》这本书,适合想探索Windows操作系统的兄弟们 ProcMon,进程和线程监视工具。它可以实时地显示当前每个处理器正在执行哪些进程和线程。这些信息还可以被转储到一个文本文件中供进一步分析和查看。 DPerfLite,一个可以揭示线程间同步关系的工具。它记录了当前系统中与同步有关的内核操作,允许用户在一个图形界面中直观地观察这些操作,并检查线程之间的各种同步关系。 还有WRK,Windows公开给学习操作系统人士的部分源码

2020-11-23

tcpdump实验数据

tcpdump实验数据

2025-08-24

数据集格式转换以及标注框可视化脚本

coco转yolo yolo转coco coco标注格式(.json)的标注框可视化 yolo标注格式(.txt)的标注框可视化

2024-11-23

第1章 ARM处理器概述.ppt

适合嵌入式软件开发工程师初学者

2021-08-03

人工智能概述.ppt

人工智能的定义和研究目标 人工智能研究的基本内容及其特点 人工智能的基本技术 人工智能的发展史 人工智能研究的不同学派及其争论 人工智能的研究与应用领域 组合调度问题、模式识别、机器视觉、博弈、人工神经网络、知识发现和数据挖掘、智能决策支持系统 人工智能研究的不同学派及其争论 人工智能与云计算 人工智能与物联网 人工智能发展面临的困难 人工智能发展的新趋势 (1)知识表示与推理。 (2)分布式人工智能(DAI)与多智能体系统(MAS)。 (3)机器学习与数据挖掘。 (4)神经网络与进化计算等方向。

2020-12-11

人工智能应用举例.ppt

PROSPECTOR的功能与结构 专家系统实例 智能算法运行于“云端”的设想 并行计算到云计算的演变 云计算智能与Monte Carlo方法 模拟谐振子算法 元胞自动机在城市交通流中的应用 兰州BRT快速公交模型建立 快速公交系统(Bus Rapid Transit,BRT)是利用改良型的公交车辆,运营在公共交通专用道路空间上,保持轨道交通运营管理特性且具备普通公交灵活性的一种便利、快速的公共交通方式。

2020-12-14

分布式人工智能.ppt

分布式人工智能的定义 Agent的弱定义:Agent是具有自主性、社会性、反应性和能动性的计算机软件系统或硬件系统。 Agent的强定义:Agent是这样一个实体,它的状态可以看成是由信念、能力、选择、承诺等心智构件组成。即Agent除了具有弱定义下的特性外,还应该具有人类的一些特性,如知识、信念、意图等,甚至包括感情。 MAS是指由多个Agent组成的集合 黑板模型是一种广泛应用的通信方式,可支持多Agent系统的分布式问题求解。 细胞膜计算技术 元胞自动机(Cellular Automata, CA),遵循同样的作用规则,依据确定的局部规则作同步更新。 元胞自动机技术

2020-12-13

数据链路层.pptx

数据链路层结构:“MAC子层”的最基本功能就是如何控制不同用户数据传输中对物理层传输介质的访问,其中包括:介质访问时的寻址和介质访问冲突的解决。“LLC子层”的最基本功能就是负责数据链路层中“逻辑链路”的控制,其中包括:逻辑链路的建立和释放,控制信号交换、数据流量控制,解释上层通信协议传来的命令并且产生响应,以及克服数据在传送的过程当中所可能发生的种种问题。 数据链路层主要功能及实现原理 数据链路层提供的服务类型 数据帧封装和透明传输 差错控制 流量控制 海明纠错码 PPP帧结构和透明传输原理 二层交换机概述

2020-12-20

第九章专家系统.ppt

专家系统的概念 模糊专家系统 专家系统开发工具 专家系统的设计与实现 快速原型与增量式开发,所谓快速原型与增量式开发,就是在开发一个大型软件系统之前,先尽快地建立一个简单的小型的系统“模型”-称为系统原型;然后,对原型进行扩充,即在原型的基础上进行继续开发,即增量式开发

2020-12-13

第8章机器学习.ppt

机器学习的基本过程 西洋跳棋程序的具体学习过程 决策树学习 信息增益 基本的决策树学习算法——ID3算法 ID3算法举例 人工神经网络 MP模型 布尔函数的神经元实现 神经网络学习机制:有监督学习方式(神经网络根据实际输出与期望输出的偏差,按照一定的准则调整各神经元连接的权系数)、无监督学习方式(神经网络仅仅根据其输入调整连接权系数和阈值) 前馈型BP网络 反馈型Hopfield网络 马尔可夫模型 朴素贝叶斯分类器

2020-12-13

第四章物理层.pptx

物理层所定义的特性:电气、规程、功能、机械 物理层的主要作用 通信子网与资源子网 基带与频带 数据传输模式 数据通信方式 数据传输速率与信道带宽 奈奎斯特准则 数字基带信号编码 数字基带信号的传输码型 信号调制与解调 ASK调制与解调 FSK调制与解调 PSK调制与解调 物理层传输介质 非导向介质 RS-232串行接口标准

2020-12-19

第四章搜索策略.ppt

终止节点一定是端节点,但端节点不一定是终止节点。 状态空间表示法 与/或树表示法 状态空间的盲目搜索策略 宽度优先搜索 深度优先搜索 有界深度优先搜索 代价树的宽度优先搜索 代价树的深度优先搜索 估价函数与择优搜索 状态空间的启发式搜索策略 图的有序搜索与A*算法 A*算法应用举例 博弈树的启发式搜索

2020-12-12

第六章遗传算法.ppt

爬山法的基本思想,循环地向更优的方向持续移动,算法在到达一个“峰顶”时终止,此时相邻状态中没有比该“峰顶”更高的值。 模拟退火算法的基本思想,模拟退火算法和爬山法一样,也是一种迭代寻优算法,模拟退火算法以一定的概率来接受一个比当前解要差的解,因此有可能会跳出这个局部的最优解,达到全局的最优解。 禁忌搜索最重要的思想是标记对应已搜索的局部最优解的一些对象,并在进一步的迭代搜索中尽量避开这些对象(而不是绝对禁止循环) 蚁群算法的基本思想,某一条路径上走过的蚂蚁越多,释放的信息素越多,后来者选择该路径的概率就越大,大量蚂蚁组成的蚁群的集体行为便表现出信息正反馈现象。 粒子群算法的基本思想 遗传算法

2020-12-13

知识的不确定性与不确定推理(可信度方法主观贝叶斯模糊推理概率分配函数正交和似然函数信任函数).ppt

不确定推理的概率基础 确定性理论C-F模型 主观Bayes方法 不确定性的更新 结论不确定性的合成 信任函数与似然函数的关系 可能性理论和模糊推理 非单调推理

2020-12-13

人工智能程序设计语言.ppt

LISP语言 SCHEME语言的基本概念 块(form)是Scheme语言中的最小程序单元,一个Scheme语言程序是由一个或多个form构成。没有特殊说明的情况下 form 都由小括号括起来 SCHEME语言的数据类型 PROLOG语言 Prolog程序的简单例子 Visual Prolog是基于Prolog语言的可视化集成开发环境,是PDC推出的基于Windows环境的智能化编程工具。目前,Visual Prolog在美国、西欧、日本、加拿大、澳大利亚等国家和地区十分流行,是国际上研究和开发智能化应用的主流工具之一。

2020-12-14

自然演绎推理.ppt

推理方式及其分类 模式匹配及其变量代换 自然演绎推理基础 谓词公式化为子句集的方法 归结演绎推理 海伯伦理论 鲁宾逊归结原理 归结反演 基于归结反演的问题求解 归结反演策略 与/或形正向演绎推理 与/或形的逆向演绎推理 代换的一致性与剪枝策略

2020-12-12

Embedded_software.zip

适用于嵌入式软件开发方向Linux学习者,里面包含学期的实验报告和交叉工具链、Linux内核等安装包,以及部分课件材料

2021-07-02

第二章知识表示.ppt

一阶谓词逻辑表示法 推理规则、定理与证明 一阶谓词逻辑表示法的特点 一阶谓词表示法的应用举例 产生式表示法 产生式系统的构成 产生式系统问题求解的一般步骤 框架与框架网络 语义网络表示法 面向对象表示法

2020-12-12

介质访问控制子层.pptx

MAC子层基础 两种信道类型:物理信道可分为“点对点信道”的“广播信道”两大类 理解“冲突域” 介质争用解决方案主要有:CSMA、CSMA/CD和CSMA/CA协议。 冲突避让原理 以太网帧格式综述

2020-12-22

计算机网络体系结构.pptx

OSI/RM是第一个标准化的计算机网络体系结构。它是针对广域网通信(也就是不同网络之间的通信)进行设计的,划分为七个层次,由低到高分别是物理层(Physical Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)、应用层(Application Layer) TCP/IP协议体系结构共划分为四层,分别是:应用层、传输层、网际互连层、网络访问层 网络通信协议的三要素

2020-12-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除