• (函数)实现strstr函数


    • 题目:实现strstr函数。
    • 这个函数原型 strstr(char *a, char *b),在a中是否包含b这个字符串,包含返回第一个子串的位置,否则返回NULL。
    • 思路:其实这个就是找子串的问题。特殊情况,当b为空的时候,直接返回a;当b不为空的时候,指定start指针,通过两次循环,逐一对strstr中的子串和b进行匹配,如果b走到末尾,表示找到,start指针指向开始位置,否则start继续往前,

      例子:abcdefg    bcd  
              start指向a的位置,  将abcdefg和bcd比较   ->否
              start前进,指向b的位置,  将bcdefg和bcd比较  -> 是   返回start指针。

    • 代码
      class Solution {
      public:
          char *strStr(char *haystack, char *needle) {
              if (!*needle)
                  return haystack;
              char *start = haystack;
              char *temp1 = haystack, *temp2 = needle;
              while (*start){
                  temp1 = start;
                  temp2 = needle;
                  while (*temp2 && temp1 && !(*temp2 - *temp1))
                      temp2++, temp1++;
                  if (!*temp2)
                      return start;
                  start++;
              }
              return NULL;
          }
      };
  • 相关阅读:
    ARRAYLIST使用方法
    学习如何把数据库数据提取为XML(转)
    jquery常用技巧及常用方法列表
    邮件发送
    DataSet/XMl相互操作
    jquery Tab效果和动态加载
    Ajax 显示XML
    dropdownlist动态数据绑定
    sql 拼接
    javascriptxmlxslt操作
  • 原文地址:https://www.cnblogs.com/Kobe10/p/6366174.html
Copyright © 2020-2023  润新知