1.求一个字符串中连续出现次数最多的子串。
我自己的思路:
遍历所有可能的子串的长度,遍历所有可能的起始位置,后面遍历查找有多少连续相同的子串,更新最大次数。
我是用C实现的。
#include<stdio.h> #include<stdlib.h> #include<string.h> char * maxTimeSubStr(const char * str_in) { int n = strlen(str_in); char * word = (char *)malloc((n + 1) * sizeof(char)); char * tmp = (char *)malloc((n + 1) * sizeof(char)); char * max_times_word = (char *)malloc((n + 1) * sizeof(char)); int max_times = 0; for(int i = 1; i <= n; i++) //长度 { for(int j = 0; j + i < n; j++) //起始位置 { int times = 1; int k; for(k = 0; k < i; k++)//获取当前的字符串 { word[k] = str_in[j + k]; } word[k] = '