第二周项目5求一个字符串是否为回文

来源:互联网 发布:java类加载器哪三种 编辑:程序博客网 时间:2024/05/18 06:59

问题及描述:

/*
 *Copyright(c++)2015,烟台大学计算机学院
 *All rights reserved,
 *文件名称:test.cpp
 *作    者:程梦莹
 *完成日期:2015年9月12日
 *版本号:v1.0
 *问题描述:判断一个字符串是否为回文(顺读和倒读都一样的字符串)
 *输入描述:一段字符串
 *程序输出:是否为回文
*/

#include<stdio.h>#include<string.h>#define MAX 100bool func(char s[]){bool flag=true;int i,j,slen=strlen(s);for(i=0,j=slen-1;i<j;i++,j--)if(s[i]!=s[j]){flag=false;break;}return (flag);}void main(){char s[MAX];printf("输入一字符串:");scanf("%s",s);if(func(s))printf("%s字符串是回文\n",s);elseprintf("%s字符串不是回文\n",s);}


运行结果:

知识点总结:在func(s)算法中,for循环语句的执行次数为n/2(n为字符串s的长度),则它的时间复杂度为O(n).程序的时间复杂度也为O(n).

学习心得:对时间复杂度又有了进一步的认识。

0 0