网摘一道百度2014年9月25日面试题(题目是网上看到的,代码是自己写的)
来源:程序员人生 发布时间:2014-10-06 08:00:00 阅读次数:1905次
题目:一个char数组只包含a,b,c,d,e五种字符,设计一种算法,找出一个包含五种字符的最小区间【a,b】,数组是循环的(比如区间[9,2]也是可以的).
思路:找到所有含有abcde这五个字符的区间,取最小区间并且记录最小区间的下标。每找到一个含有abcde的区间就记录下,然后把计数数组清0,为了方便下一轮的统计区间长度。
代码如下:
#include <iostream>
#include <time.h>
using namespace std;
const n=10;
char f(int x)
{
char temp='