基于visual Studio2013解决面试题之1009兄弟字符串




题目



解决代码及点评

/*
	匹配兄弟字符串,字符串内容一样,但是顺序不一样,称之为兄弟字符串
*/
#include <iostream>  
using namespace std;

int isBroStr(char *str1, char *str2)
{
	// 整个数组,一个字符串对整个数组累加,一个字符串对这个数组累-,最后这个数组应该是0
	int a[26 * 2] = { 0 };
	int i, strLen;

	if (!str1 && !str2)  //都是空串,则返回真
		return 1;
	else if (!str1 || !str2) // 有一个是空串,返回假
		return 0;
	else
	{
		// 这里作累加和累减
		if (strlen(str1) != strlen(str2))
			return 0;
		strLen = strlen(str1);
		for (i = 0; i < strLen; i++)
		{
			++a[str1[i] - 'A'];
			--a[str2[i] - 'A'];
		}
		for (i = 0; i < 26 * 2; i++)
		if (a[i])
			return 0;
		return 1;
	}
}

int main()
{
	char *str1 = "asdfaabAAB";
	char *str2 = "asdfAABaab";
	if (isBroStr(str1, str2))
		cout << " String 1 and String 2 are brothers!" << endl;
	else
		cout << " String 1 and String 2 are not brothers!" << endl;
	system("PAUSE");
	return 0;
}


代码下载及其运行

代码下载地址:http://download.csdn.net/detail/yincheng01/6704519

解压密码:c.itcast.cn


下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:

1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”


2)在下拉框中选择相应项目,项目名和博客编号一致

3)点击“本地Windows调试器”运行


程序运行结果









posted on 2013-12-20 21:29  三少爷的剑123  阅读(158)  评论(0编辑  收藏  举报

导航