注册 登录
编程论坛 新人交流区

一道比较困难的外企公司面试题—关于(C++)编程,求解!

单调黑白 发布于 2007-10-04 18:22, 1653 次点击
题目如下:
若一个字符串在中间分开后,左边与右边的反转是相同,那就是对称文字。
请写一个简单的程序函数,回传输入的字符串是否对称。
例:abcdedcba就是对称文字
22 回复
#2
balcony5202007-10-04 18:54
期待有人解决下
#3
chuan555012007-10-04 19:02
#4
coachard2007-10-04 19:05
这个~~~~~~呃。。。

不知LZ有何见解???
#5
池守锬2007-10-04 19:47
一道比较困难的外企公司面试题—关于(C++)编程?真的吗?
#6
yzwdream2007-10-04 20:01

....外企面试>>>

#7
栖柏2007-10-04 20:04
回文
#8
卧龙孔明2007-10-04 20:04
不难
#9
卧龙孔明2007-10-04 20:04
用栈
#10
栖柏2007-10-04 20:06

什么时候来的啊?好久没看到大哥了
我小弟是新手

#11
单调黑白2007-10-04 20:10
回复:(单调黑白)一道比较困难的外企公司面试题—关...
说不难的朋友 麻烦您可否给出具体代码 谢谢!
#12
出浦闲舟2007-10-04 20:23
好像我们学c的时候老师讲过了!不过忘了
#13
Knocker2007-10-04 20:47
难,难,难
#14
xhtang2007-10-04 20:57

这种问题用数组应该是比较容易的,我只是写了一个可以实现的例子,我并没有考虑时间和空间的复杂度问题,你们可以作参考,其实这用动态数组是比较好的,这样比较节省空间,你们可以自己改一下,

int main()
{
char a[100];
int i=0, j, k;
char ch;
ch = getchar();
while (ch != '\n')
{
a[i] = ch;
i++;
ch = getchar();
}
j = i/2 -1;
k = i/2 +1;
while (k != i)
{
if (a[j] != a[k])
{
printf("不是回文!\n");
return 0;
}
else
{
j--;
k++;
}

}
printf("是回文! \n");
return 0;
}

#15
giant6112007-10-04 21:08
真地假地,外企面试?
#16
multiple19022007-10-04 21:10
以下是引用卧龙孔明在2007-10-4 20:04:39的发言:
用栈

同意。类似于扒皮。

Is回文=(inputstr[0]=inputstr[inputstr.length-1]) && Is回文(str(inputstr,2,inputstr.length-2))



算法描述。非C++代码。str用法同VB中Mid语法。

#17
cj271528352007-10-04 22:12
哈哈 就这么简单
#18
coachard2007-10-04 22:19
其实不需要栈空间。。。只需两个变量。

但我来说,实在好难啊~~~~~~~~~~~~~~~~~~~~
#19
nuciewth2007-10-04 22:25
两个标记同时扫描.

外企的题目不会这么简单吧.
#20
sillystone2007-10-05 14:41

C++,我们都没有上过,用C求,我可以!用C求就是用链表……

#21
阿拉丁2007-10-05 17:05
#22
climber2007-10-05 18:04
回复:(单调黑白)一道比较困难的外企公司面试题—关...
这个应该算不上很困难把
#23
单调黑白2007-10-05 19:37
回复:(单调黑白)一道比较困难的外企公司面试题—关...
谢谢大家的帮助!
1