摘要: !!! 注意: 此图是本书中使用的自定的串结构, 下标从1开始的 , 下方代码是使用C风格字符串, 下标从0开始的, 因此上述next[j] 公式修改如下: KMP 算法代码实现: 以普通的C风格字符串作为例子。 #include <stdio.h> #include <string.h> #inc 阅读全文
posted @ 2018-12-08 21:52 MusaGeek 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 总结: 定义:栈是仅限定在表位进行插入和删除的特殊线性表。共享栈可以节省顺序栈的空间的浪费问题。栈的应用:对一个指定的序列产生不一样的顺序的序列。中缀表达式 转换成 后缀表达式, 以及后缀表达式的计算。函数栈 实现函数调用, 递归函数。链栈 和 顺序栈的比较 : 看最后 定义:栈是仅限定在表位进行插 阅读全文
posted @ 2018-12-08 21:29 MusaGeek 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 总结: 定义 : 只允许在一端进行插入操作, 而在另一端进行删除操作的线性表。 是一种FIFO的线性表。顺序结构, 避免数组移动 , 和头指针前面空间的浪费, 使用循环队列循环队列判断 空队列 和 队列满的两种方法1.增加falg标记2.在满时候 rear 和 front 之间空一个元素。满的时候 阅读全文
posted @ 2018-12-08 21:27 MusaGeek 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 总结: 6.1 基础 : 数组 和 函数不能充当返回值, 可以使用指向他们的指针. 自动变量: 生存周期 = 作用域 局部静态变量: 生存周期 > 作用域 函数声明 = 函数原型 6.2 参数传递: 值传递: 变量,指针,函数(传值调用) 引用传递 : 避免大量拷贝,const 修饰能扩大其类型容纳 阅读全文
posted @ 2018-12-08 14:50 MusaGeek 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 总结: 5.3 条件语句: switch 中 case 里面 如果要定义变量给初始值, 请在{}里面操作。 5.6 try 语句: 异常抛出 从 包含try的函数寻找catch,没有找到终止当前函数, 继续调用此函数的函数执行此操作。如果始终没有找到catch 会转到名为terminate的标准库函 阅读全文
posted @ 2018-12-08 14:48 MusaGeek 阅读(117) 评论(0) 推荐(0) 编辑