NJ Driver Quiz - 刷题算法系统
Advanced Learning Algorithm Documentation
系统架构 System Architecture
┌─────────────────────────────────────────────────┐ │ 用户界面 (UI) │ ├─────────────────────────────────────────────────┤ │ Store (Zustand) │ ├─────────────────────────────────────────────────┤ │ CachedQuizEngine │ │ ┌──────────────────┬─────────────────────┐ │ │ │ Cache Window │ Sorting Window │ │ │ │ (10 questions) │ (remaining) │ │ │ └──────────────────┴─────────────────────┘ │ ├─────────────────────────────────────────────────┤ │ QuizEngine │ ├─────────────────────────────────────────────────┤ │ Storage Layer (Supabase/IndexedDB) │ └─────────────────────────────────────────────────┘
学习模式 Learning Modes
智能模式 (Smart Mode)
多级优先级队列 + 艾宾浩斯遗忘曲线
- 到期错题最高优先级
- 易错题重点突破
- 新题优先学习
- 双窗口缓存机制
普通模式 (Normal Mode)
按题目ID顺序学习
- 系统性学习
- 出现3次标记掌握
- 适合初学者
- 进度清晰可见
错题模式 (Mistakes Mode)
加权随机复习错题
- 错误次数决定权重
- 避免连续重复
- 需要7次出现才掌握
- 重点突破薄弱环节
相似题模式 (Similar Mode)
聚焦相关题目学习
- 相似题目分组
- 强化知识点
- 未来支持向量搜索
- 提高学习效率
智能模式优先级系统 Smart Mode Priority System
| Priority | Type | Weight | Condition |
|---|---|---|---|
| 1 | 到期的错题 | ⭐⭐⭐⭐⭐ | nextReview <= now && incorrectCount > 0 |
| 2 | 易错题未掌握 | ⭐⭐⭐⭐ | isErrorProne && !mastered |
| 3 | 新题目 | ⭐⭐⭐ | appearances === 0 |
| 4 | 学习中 | ⭐⭐ | appearances < 3 && incorrectCount === 0 |
| 5 | 按时间排序 | ⭐ | lastSeen ASC |
艾宾浩斯遗忘曲线 Ebbinghaus Forgetting Curve
错题复习间隔根据错误次数递增,确保在最佳时机复习:
1分钟
第1次错误
5分钟
第2次错误
10分钟
第3次错误
30分钟
第4次错误
1小时
第5次错误
2小时
第6次错误
6小时
第7+次错误
性能指标 Performance Metrics
取题延迟
< 1ms
从缓存获取 O(1)
排序延迟
< 50ms
异步后台执行
缓存命中率
99.98%
双窗口缓存机制
掌握标准 Mastery Standards
普通题目
- • 出现次数 ≥ 3次
- • 无错误记录
- • 标记为 "mastered"
错题
- • 出现次数 ≥ 7次
- • 连续正确 ≥ 3次
- • 更严格的掌握要求
数据流程 Data Flow
1
用户答题
提交答案触发 recordAnswer()
2
更新进度
内存 Map + IndexedDB + Supabase
3
重新排序
异步更新优先级队列
4
获取下一题
从缓存窗口 O(1) 获取
Ready to Experience Smart Learning?
基于科学的学习算法,让你用最短时间通过考试
Start Smart Practice