본문 바로가기

Algorithm/String

(C++) - LeetCode (easy) 28. Find the Index of the First Occurrence in a String

반응형

https://leetcode.com/problems/find-the-index-of-the-first-occurrence-in-a-string/description/

 

Find the Index of the First Occurrence in a String - LeetCode

Can you solve this real interview question? Find the Index of the First Occurrence in a String - Given two strings needle and haystack, return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.   Example 1: I

leetcode.com

문자열 함수 find를 이용해보는 문제였습니다.

📕 풀이방법

📔 풀이과정

 C++ find함수는 어떤 문자열에서 부분 문자열을 찾았을 때 해당 문자열의 index를 반환합니다. 찾지 못했을 경우 string::npos라는 상수를 반환하는데 string::size_type의 static const member  변수로 unsigned int 또는 unsigned long long 형식과 동일합니다. 따라서 음수 -1이 아닌 해당 type의 최대값으로 정의됩니다.

 

find함수의 결과를 ans를 선언해 저장합니다.

📔 정답 출력 | 반환

ans가 string::npos인 경우 -1을, 아니면 ans를 반환합니다.


📕 Code

📔 C++

class Solution {
public:
    int strStr(string haystack, string needle) {
        int ans = haystack.find(needle);
        return ans == string::npos ? -1 : ans;
    }
};

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.