- 博客(17)
- 收藏
- 关注
原创 数据库范式详解
在关系模式R中,如果对于R中任意两个元组t1和t2,当它们在属性集X上的值相同时,在属性集Y上的值也必然相同,则称Y函数依赖于X,记为X→Y。
2025-06-19 13:15:58
857
原创 Java Swing 视图组件层次结构梳理
Swing 组件分为顶层容器、中间容器和具体组件。JFrame/JDialog/JWindow 作为窗口存在,JPanel 等用于组织布局,JComponent 及其子类为实际可见控件。理解层次结构有助于合理组织界面和代码。
2025-06-18 13:31:51
268
原创 非确定有限自动机(NFA)与正则表达式转换
非确定性:对于某个状态和输入符号,可能存在多个可能的转换(或者没有转换)ε-转换:允许在不读取输入符号的情况下进行状态转换(即空转换)并行性:NFA可以同时处于多个状态一个NFA可以表示为一个5元组:N = (Q, Σ, δ, q0, F)Q:有限状态集合Σ:输入符号集合(字母表)δ:转换函数,δ: Q × (Σ ∪ {ε}) → 2Q(2Q表示Q的幂集,即Q所有子集的集合)q0:初始状态(q0 ∈ Q)F:接受状态集合(F ⊆ Q)
2025-06-18 10:49:20
323
原创 LALR(1) 语法分析
特性LR(0)SLR(1)LALR(1)LR(1)分析能力最弱较弱强最强分析表大小小小中等大构造复杂度低中等高最高实际应用几乎不用较少广泛少见典型冲突移进-归约归约-归约移进-归约归约-归约归约-归约几乎没有LALR(1) 分析是一种平衡了分析能力和分析表大小的语法分析方法。通过合并具有相同 LR(0) 核心的 LR(1) 项目集,LALR(1) 保持了大部分 LR(1) 的分析能力,同时显著减小了分析表的大小。
2025-06-18 10:29:54
288
原创 LR(1) 语法分析
A → αβ 是一个产生式点 “·” 表示当前分析位置a 是一个终结符(或结束符 $),称为向前看符号(Look-ahead)向前看符号 a 表示:如果我们按照产生式 A → αβ 归约,那么归约后,a 应该是输入中的下一个符号。换句话说,尝试归约前,我们需要检查输入符号栈的栈顶,如果栈顶不是 a ,则不能归约。LR(1) 分析是 LR 分析家族中最强大的一种方法,通过为每个项目附加精确的向前看符号,它解决了 SLR(1) 中可能出现的冲突问题。
2025-06-15 22:37:58
1350
原创 SLR(1) 语法分析
SLR(1) 分析是在 LR(0) 分析的基础上的一种改进,它通过引入向前看一个符号(Look-ahead)并与FOLLOW集比较,来解决许多 LR(0) 分析中出现的冲突问题。SLR 代表"Simple LR",是 LR 分析家族中的一员,比 LR(0) 更强大,但比 LALR(1) 和 LR(1) 简单。
2025-06-12 12:54:27
2028
原创 LR(0) 语法分析
LR(0) 分析是一种自底向上的语法分析方法,它是 LR 分析家族中最基本的一种。其中"L"表示从左到右扫描输入,"R"表示构造最右推导的逆过程,"0"表示不使用任何向前看符号。
2025-06-11 20:51:22
1584
原创 LL(1) 语法分析
LL(1) 分析是一种自顶向下的语法分析方法,其中第一个"L"表示从左到右扫描输入,第二个"L"表示构造最左推导,"1"表示只使用输入中的一个符号来进行预测。
2025-06-11 13:50:45
369
原创 苏州大学博物馆智能语音助手小程序技术详解
本文介绍了一个专为苏州大学博物馆开发的微信小程序项目,基于小智开源项目(MIT协议)进行深度定制。项目集成了多项关键技术,包括WebSocket实时通信、语音识别(STT)与文本转语音(TTS)、音频播放队列、地理位置感知、大模型知识问答、录音管理与音频上传等。通过这些技术,小程序实现了语音导览、知识问答、位置感知等功能,提升了用户的交互体验。项目采用uni-app和微信小程序API开发,旨在为博物馆提供智能化、交互式的导览服务。文章详细讲解了各项技术的实现细节,并提供了相关代码片段,展示了项目的技术架构与
2025-05-22 20:18:48
477
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人