- 博客(7)
- 收藏
- 关注
原创 KMP算法详解
状态机示例: 算法步骤:建立状态机 build(String pattern) 状态机只与pattern有关重启状态:当于第i个元素不匹配时,需要进行回溯;本来暴力算法要回溯到第1个元素,但现在将第1到第i-1元素的子串输入状态机,得到的状态为KMP的重启状态,从这个状态开始匹配减少无用的回溯。参考链接初始状态base cases:遍历pattern,匹配成功(j==pattern.charAt(i))状态转移:遍历pattern,匹配失败状态重启(restart state):pre初始化为0, 遍历pa
2022-06-27 22:09:33
159
1
原创 易混淆API
String: 返回值 方法 作用 int length() 长度 boolean isEmpty() 判空 String substring(int start) substring(int start, int end) 返回此字符串从start开始至l
2022-04-02 11:28:32
621
原创 常用API的易混淆操作
ArrayListArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。继承了 AbstractList ,并实现了 List 接口。方法 描述 add() 将元素插入到指定位置的 arraylist 中 addAll() 添加集合中的所有元素到 arraylist 中 clear() 删除 arraylist 中的所有元素 clone() 复制一份 arraylist contains(
2022-03-27 15:14:16
136
原创 Java中对象的实例化
基本概念对象:内存上来说是分配在堆上面的一块内存区域类:把一类具体事物相同特征,功能/行为抽象为属性与方法过程。类是对象的模板,对象是类的具体表现。构造函数:与类名同名的函数,用来实例化对象并初始化成员变量。类的结构:静态块:当对应的class文件被首次加载到虚拟机时执行。 代码块 构造函数静态属性与变量首先加载。其次时静态块,之后是代码块,最后是构造函数。在方法区中,存储了每个类的信息(包括类的名称、方法信息、字段信息)、静态变量、常量以及编译器编译后的代码等。【包.
2022-03-25 21:16:04
8199
原创 Comparator与Java API配合使用
Comparator类 Comaprator提供方法 使用方法&题目Comparator类public interface Comparator<T>强行对某个对象 collection 进行整体排序的比较函数。可以将 Comparator 传递给 sort 方法(如 Collections.sort 或 Arrays.sort),从而允许在排序顺序上实现精确控制。例如,通过创建一个颠倒比较输出的比较函数,可以实现按逆向排序。还可以使...
2022-03-25 17:43:57
838
转载 Java双端队列Deque使用方法
Deque是一个双端队列接口,继承自Queue接口,Deque的实现类是LinkedList、ArrayDeque、LinkedBlockingDeque,其中LinkedList是最常用的。Deque有三种用途:普通队列(一端进另一端出):Queue queue = new LinkedList()或Deque deque = new LinkedList()双端队列(两端都可进出)Deque deque = new LinkedList()堆栈Deque deque = new Link
2022-03-20 18:30:56
1122
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人