计算机组成原理:1. 计算机系统概论
1.1 计算机系统简介 1.1.1 计算机软硬件概念 计算机系统由硬件和软件两大部分组成: 硬件:是指计算机的实体部分,它由看得见摸得着的各种电子元器件,各类光、电、机设备的实物组成,如主机、外部设备等。 软件:由人们事先编制的具有各类特殊功能的程序组成,通常存放在计算机的主存或辅存内。 计算机性能…
编译原理:2. 词法分析
词法的(Lex-i-cal):与语言的单词或词汇有关,但有别于语言的文法和结构的。 词法分析器以字符流作为输入,生成一系列的名字、关键字和标点符号,同时抛弃单词之间的空白符和注释。程序中每一点都有可能出现空白符和注释;如果让语法分析器来处理它们就会使得语法分析过于复杂,这便是将词法分析从语法分析中分…
编译原理:1. 绪论
1.1 基本概念 程序设计语言源程序的执行基本有两种方式: 翻译:使用翻译程序,将源程序翻译成为低级语言目标程序,然后执行目标程序。 解释:使用解释程序,对源程序逐个语句边解释边执行。 编译器:可以阅读以某一种语言(源语言)编写的程序,并把该程序翻译成为一个等价的、用另一种语言(目标语言)编写的程序…
AC 自动机详解
前置知识 字典树 Trie Trie 是一种能够快速插入和查询字符串的多叉树结构。节点的编号各不相同,根节点编号为0,其他节点用来标识路径还可以标记单词插入的次数。边表示字符。 支持操作 Trie 维护字符串的集合,支持两种操作: 向集合中插入一个字符串:void insert(char *s) 在…
Python 语法基础
前言 自从对着官方文档对着 ipython 敲了一遍一天学完了 Python 的语法之后,我觉得我行了。于是屁颠屁颠地跑去写项目,结果显而易见,开发之路可谓寸步难行,一停下来就光速遗忘。 这引起了我深刻地反思:学习这条路上,切勿取巧偷懒,切勿急于求成,切勿自以为是。简言之就是: 形不成形,意不在意,…
图的存储
1. 邻接矩阵 思想: 利用二维数组 g[N][N] 存储所有的点到点的权值。 其中 N 为点的数量,g[i][j] 表示点 i 到点 j 的权值。 时间复杂度:$\mathcal{O}(n^2)$ 空间复杂度:$\mathcal{O}(n^2)$ 应用: 只在点数不多的稠密图使用。 大部分情况下点…
数据结构课程设计
迷宫求解 1. 问题描述 (1)根据用户选择的游戏难度程度来动态生成迷宫地图,迷宫规模为三种,分别是10 10、50 50、100 * 100。 (2)每次游戏开始需要玩家选择一个难度,然后随机生成一个迷宫地图,需要保证改迷宫地图至少存在一个解。 (3)迷宫地图由0和1构成的n维方阵表示,0表示可走…