分享

實現 strStr() (C++)

28. Implement strStr()、LeetCode
筆記

string

存取字符 []
  

str[0]

字串的長度
  

str.length() 

字串是否為空
  

str.empty()

28. Implement strStr()

Implement strstr():strstr - C++ Reference (cplusplus.com)
題目:返回haystack 中第一次出現needle的索引,如果needle不是 haystack 的一部分,則返回 -1。
回傳:第一次出現needle的索引
備註:needle="",則返回 0。
例如1(回傳位置):
Input
  

string haystack="hello";

string needle="ll";

Output
  

2


例如2(不符合):
Input
  

string haystack="aabaa";

string needle="aaa";

Output
  

-1


例如3(空字串):
Input
  

string haystack="issip";

string needle="";

Output
  

0


Code

  

#include <iostream>

using namespace std;

int main(){

        string haystack="hello";

        string needle="ll";

        if(needle==""){cout<<"0"<<endl;return 0;}

        for(int i=0; i<haystack.length(); i++){

                if(haystack[i] == needle[0]){

                        for(int j=0; j<needle.length(); j++){

                                if(needle[j] != haystack[i+j]){

                                        break;

                                }

                                if(j==needle.length()-1){

                                        cout<<i<<endl;

                                        return i;

                                }

                        }

                }

        }

        cout<<"-1"<<endl;

        return -1;

}

筆記 leetcode c語言

28. Implement strStr()

Output

  

2

參考資料

[1]. Implement strStr() - LeetCode
[2]. C/C++ - String 用法與心得完全攻略 | Mr. Opengate (mropengate.blogspot.com)
#筆記  #leetcode  #c語言 
分類:學習

【關鍵字】:新手教學、Leetcode ; 【分類】:學習、理財。(目前C++新手教學第二章內容已完結)。建議或意見可私訊:https://reurl.cc/ze7L9k。文章有錯誤的地方還請留言指正,謝謝各位

評論
上一篇
  • 27. Remove Element (C++)
  • 下一篇
  • 搜索插入位置(C++)
  • 更多文章
    載入中... 沒有更多了