随笔分类 - 数据结构与算法
摘要:递归的定义:递归就是不断的调用自己的方法,帮助解决麻烦的代码问题,最后提高代码的简洁性、 递归需要遵守的规则: 迷宫回溯问题: 迷宫回溯问题的代码实现: package 递归;public class 迷宫回溯问题 { public static void main(String[] args) {
阅读全文
摘要:代码实现 import java.util.ArrayList;import java.util.List;import java.util.Stack;public class text1 { public static void main(String[] args) { //先定义一个逆波兰表
阅读全文
摘要:前缀表达式又叫波兰表达式,前缀表达式的运算符位于操作数之前 前缀表达式案例:(3+4)*5-6的前缀表达式为-*+6543 中缀表达式: 后缀表达式(逆波兰表达式):运算符位于操作数后面 后缀表达式代码; package 逆波兰表达式;import java.util.ArrayList;impor
阅读全文
摘要:KMP算法思路分析:先得到字串的部分匹配表,使用部分匹配表完成KMP的算法匹配 部分匹配表:利用前缀和后缀完成 移动位数为:已经匹配的字符-对应的部分匹配值 前缀和后缀案例: 前缀和后缀案例2: KMP算法的代码实现案例:
阅读全文
摘要:双向链表可以实现自我删除,和向前向后查找,因为双向链表中多了个pre,而pre是指向前一个节点 单向链表删除只能单一查找,并且如果删除需要定位到要删除节点的前一个节点 具体: 双向链表的增删改查思路:
阅读全文
摘要:链表是有序链表 链表在内存中以节点的方式储存数据 每个节点包含data域,next域:指向下一个节点 链表的各个节点不一定是连续储存 链表有带头节点的链表和不带头节点的链表‘ 链表示意图: 不考虑序号添加 根据序号添加 修改节点功能:先找到该节点,通过遍历,然后修改即可,temp.name=newH
阅读全文
摘要:队列是一个有序列表,可以用数组或则链表实现 遵循先入先出原则,即:先存入的数据先取出 示意图:(使用数组模拟队列示意图) 队列的注意事项: 数组模拟队列的不足之处:目前数组使用一次就不能使用,用环形队列可以解决
阅读全文