更新时间:2022-09-09 23:06:05
(1) null
(2) length is 0
(3) return value
(4) strlen
1 class Solution { 2 public: 3 /** 4 * Returns a index to the first occurrence of target in source, 5 * or -1 if target is not part of source. 6 * @param source string to be scanned. 7 * @param target string containing the sequence of characters to match. 8 */ 9 int strStr(const char *source, const char *target) { 10 // write your code here 11 if (source == NULL || target == NULL) return -1; 12 13 int i, j, len_s = strlen(source), len_t = strlen(target); 14 15 if (len_s == 0 && len_t == 0) return 0; 16 17 i = 0; 18 while (source[i] != '\0') { 19 if (i + len_t > len_s) return -1; 20 j = 0; 21 while (target[j] != '\0') { 22 if (source[i + j] == target[j]) { 23 j++; 24 } else { 25 break; 26 } 27 } 28 if (target[j] == '\0') return i; 29 i++; 30 } 31 return -1; 32 } 33 };
本文转自ZH奶酪博客园博客,原文链接:http://www.cnblogs.com/CheeseZH/p/5109195.html,如需转载请自行联系原作者