早教吧作业答案频道 -->其他-->
数据结构题,“试编写一个算法,判断一个字符序列是否是回文(中心位置对称的字符串)”。(手机消息)一道数据结构题,“试编写一个算法,判断一个字符序列是否是回文(中心位置
题目详情
数据结构题,“试编写一个算法,判断一个字符序列是否是回文(中心位置对称的字符串)”。(手机消息)
一道数据结构题,“试编写一个算法,判断一个字符序列是否是回文(中心位置对称的字符串)”。
一道数据结构题,“试编写一个算法,判断一个字符序列是否是回文(中心位置对称的字符串)”。
▼优质解答
答案和解析
/*用顺序储存结构*/
#include"stdio.h"
void main()
{
char str[100];
int i=0,a,b,j,k;
gets(str);
while(str[i]!='\0')
i++; //计算串的长度
if(i%2==0)
{
a=i/2-1;b=i/2; //计算中心位置
}
else
{
a=i/2-1;b=i/2+1;
}
for(j=a,k=b;j>=0,k<=i;j--,k++) //判断是否回文//
{
if(str[j]!=str[k])
break;
}
if(k==i+1)
printf("Yes,it is!\n");
else
printf("it's not.\n");
} 还可以用链式储存结构,核心算法一致.
#include"stdio.h"
void main()
{
char str[100];
int i=0,a,b,j,k;
gets(str);
while(str[i]!='\0')
i++; //计算串的长度
if(i%2==0)
{
a=i/2-1;b=i/2; //计算中心位置
}
else
{
a=i/2-1;b=i/2+1;
}
for(j=a,k=b;j>=0,k<=i;j--,k++) //判断是否回文//
{
if(str[j]!=str[k])
break;
}
if(k==i+1)
printf("Yes,it is!\n");
else
printf("it's not.\n");
} 还可以用链式储存结构,核心算法一致.
看了 数据结构题,“试编写一个算法...的网友还看了以下:
vb 一组三位数,选最大的两个数两个文本,一个按钮.text1输入一个三位数,156提交命令后,t 2020-05-13 …
您的部门需要设置一个共享文件夹,这样整个公司都有能够读取该文件夹中的文件,但不能对文件夹的内容进行任 2020-05-31 …
您的部门需要设置一个共享文件夹,这样整个公司都能够读取该文件夹中的文件,但不能对文件夹的内容进行任何 2020-05-31 …
对调位置的数一个两位数,十位上的数字比各位上的数字少2.如果把这两个数字对调位置,组成一个新的两位 2020-07-07 …
观察:21-12=9,75-57=18,96-69=27.84-48=36,45-54=-9,27 2020-07-09 …
Java怎样判断字符串中最后一个英文单词的位置英文的索引位置错了错了应该是判断这个字符串Strin 2020-07-17 …
有一个两位数,十位上的数与个位上的数的和是15,如果把这个两位数的位数的位置对换,那么所得的新数比 2020-07-20 …
如图,将正△ABC分割成16个全等的小正三角形,在每个三角形的顶点各放置一个数,使位于同一直线上的 2020-07-31 …
任选一个两位数,两个数字不相同,将它的两个数字交换位置,然后用这两个数中的较大数减去较小数,把所得的 2020-11-17 …
一个两位数,个位数比十位数少1,如果这个两位数的个位数和十位数调换位置,得出来的数和一开始的数相.. 2020-11-20 …