回复:(单调黑白)一道比较困难的外企公司面试题—关...
说不难的朋友 麻烦您可否给出具体代码 谢谢!
雕刻单调的人生
这种问题用数组应该是比较容易的,我只是写了一个可以实现的例子,我并没有考虑时间和空间的复杂度问题,你们可以作参考,其实这用动态数组是比较好的,这样比较节省空间,你们可以自己改一下,
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;
}