问题描述给定一个字符串,求出其最长重复子串例如 abcdabcd最长重复子串是 abcd最长重复子串可以重叠例如abcdabcda这时最长重复子串是 abcda中间的 a 是被重叠的。直观的解法是,首先检测长度为 n - 1 的字符串情况,如果不存在重复则检测 n - 2, 一直递减下去,直到 1 。这种方法的时间复杂度是 O(N * N * N),其中包括三部分,长度纬度、根据长度检测的字符串数目、字符串检测。改进的方法是利用后缀数组后缀数组是一种数据结构,对一个字符串生成相应的后缀数组后,然后再排序,排完序依次检测相邻的两个字符串的开头公共部分。这样的时间复杂度为:生成后缀数组 O(N)排 Read More
1、下面的排序算法中,初始数据集的排列顺序对算法的性能无影响的是(B)A、插入排序 B、堆排序 C、冒泡排序 D、快速排序2、以下关于Cache的叙述中,正确的是(B)A、CPU中的Cache容量应大于CPU之外的Cache容量B、Cache的设计思想是在合理成本下提高命中率C、Cache的设计目标是容量尽可能与主存容量相等D、在容量确定的情况下,替换算法的时间复杂度是影响Cache命中率的关键因素3、数据存储在磁盘上的排列方式会影响I/O服务的性能,一个圆环的磁道上有10个物理块,10个数据记录R1------R10存放在这个磁道上,记录的安排顺序如下表所示:物理块12345678910逻辑 Read More
CS 312 Lecture 25Splay TreesA splay tree is an efficient implementation of a balancedbinary search tree that takesadvantage of locality in the keys used in incoming lookup requests.For many applications, there is excellent key locality.A good example is anetwork router. A network router receives net Read More