每日两道算法Day7—回文数,找出字符串中第一个匹配的下标

第一问:回文数

解题思路:将数字转换为字符串,利用双指针进行遍历比较,当两个指针走在同一个下标的时候就停止,说明这个数就是回文数。

c 复制代码
bool isPalindrome(int x) 
{
    char arr[1024];//开辟一个空间
    sprintf(arr,"%d",x);//把十进制的x转换为数组存进去,并自动添加'\0'
    int right=0;
    right=strlen(arr)-1;//strlen求出字符串个数不包含'\0'然后-1找到末尾下标
    int left=0;
    while(left<right)//比较,当两个相等的时候就表名已经是回文
    {
        if(arr[left]!=arr[right])//途中不符合就停止
            return false;
        left++;
        right--;
    }
    //走出来就表明一定是回文
    return true;
}

第二问:找出字符串中第一个匹配的下标

解题思路:利用库函数strstr进行查找,如果查找到就返回第一个下标的地址,否则返回NULL,再进行遍历遍历查找返回下标。

c 复制代码
int strStr(char* haystack, char* needle) 
{
    char* cur=strstr(haystack,needle);
    if(cur==NULL)
    {
        return -1;
    }
    int count=0;
    char *tmp=haystack;
    while(tmp!=cur)
    {
        tmp++;
        count++;
    }
    return count;
}
相关推荐
神也畏惧菠萝10 分钟前
Day08 Python流程控制从入门到上瘾:if/match/while/for四件套,从B站登录一路打到猜数字游戏
python·算法·数据存储·for·while·if·ifelse
揽星河..32 分钟前
【C语言】分支和循环
c语言·c++·算法
Fuyo_11192 小时前
C++ AVL树保姆级详解:从平衡因子到四大旋转机制
java·c++·算法
jktantan2 小时前
每个节点 41 字节:把一棵百万节点树拆进 14 个 typed array
前端·javascript·vue.js·算法·typescript
揽星河..3 小时前
【C语言】猜数字游戏
c语言·算法·游戏
LabVIEW开发3 小时前
CTM-3 红外测温仪 + LabVIEW 温度怎么测?
算法·labview·测试·labview程序
纪念 2293 小时前
C++算法(六)
开发语言·c++·算法
Dumbness4 小时前
UIA 读微信群消息没有 id,怎么判断哪条是新的:后缀对齐在翻历史和撤回时整屏重报
python·算法
taka4 小时前
从 24x 到 141x:我用纯 Python 零依赖项目,扒开了 GPU 加速的性能黑洞
算法