博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

程序员面试100题之四十六,对称子字符串的最大长度

Posted on 2010-09-24 20:18  KurtWang  阅读(447)  评论(0编辑  收藏  举报
// 100_46.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

int find_len(char * str)
{
	if(str==NULL)
		return 0;
	int len = 1;
	char * cur = str;
	while(*str!='\0')
	{
		char * left = cur-1;
		char * right = cur+1;
		while(left>=str && *right!='\0' && *left==*right)
		{
			left--;
			right++;
		}
		int new_len = right-left+1;
		if(new_len > len)
			len = new_len;

		left = cur-1;
		right = cur+1;
		while(left>=str && *right!='\0' && *left==*right)
		{
			left--;
			right++;
		}
		new_len = right-left+1;
		if(new_len > len)
			len = new_len;

		str++;
	}
	return len;
}

int _tmain(int argc, _TCHAR* argv[])
{
	char str[] = "google";
	printf("%d\n",find_len(str));
	return 0;
}