- 博客(3)
- 收藏
- 关注
原创 测量c++,java,python,go程序运行时间
目的 1. 用语言自带的时间库测量程序运行的时间 2. 比较相同基础代码(以冒泡排序为例)下语言的运行速度 cpp // 核心部分 auto start = system_clock::now(); //...代码部分 auto finish = system_clock::now(); auto duration = duration_cast<microseconds>(finish - start); auto cost = double(duration.count()) * micr
2021-05-22 20:17:13
135
原创 KMP算法学习
本文仅记录kmp算法代码过程。 KMP算法特点 指针不回溯,算法时间复杂度在 O(n*m)但实际运行复杂度接近O(n+m),因此相比于简单模式匹配,这是一种十分高效的算法。 核心代码——求next数组 void GetNext(const char ch[], int length, int next[]) { next[1] = 0; int i = 1, j = 0; // i是当前主串正在匹配的字符位置,也是next的索引。 while (i <= length) {
2021-03-28 10:54:37
42
原创 数据结构与算法(1)——栈
栈:一种先进后出的逻辑数据结构,具体实现方式有两种,链表和队列。 实现 热身:定容栈 API设计(java语言描述) public class FixedCapacityStackOfStrings FixedCapacityStackOfStrings(int cap) 创建一个容量为cap的空栈 void push(String item) 添加一个字符串 String pop() 删除最后一个添加的字符串 boolean isEmpty() 栈是否为空 int si
2020-09-02 13:51:14
109
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人