DEV Community

Simona Cancian
Simona Cancian

Posted on

Leetcode Day 9: Find the Index of the First Occurrence in a String Explained

The problem is as follows:

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:

Input: haystack = "sadbutsad", needle = "sad"
Output: 0
Explanation: "sad" occurs at index 0 and 6.
The first occurrence is at index 0, so we return 0.
Enter fullscreen mode Exit fullscreen mode

Example 2:

Input: haystack = "leetcode", needle = "leeto"
Output: -1
Explanation: "leeto" did not occur in "leetcode", so we return -1.
Enter fullscreen mode Exit fullscreen mode

This is how I solved it:

This is the first easy problem that was actually easy. Just use the built-in index() function, and that's it!
This is how it works:

  • Check if 'needle' is a substring of 'haystack'
  • If it is, return the index of the first occurrence of 'needle'
  • Else if 'needle' is not found, return -1
if needle in haystack:
    return haystack.index(needle)
else:
    return -1
Enter fullscreen mode Exit fullscreen mode

This is the completed solution:

class Solution:
    def strStr(self, haystack: str, needle: str) -> int:
        return haystack.index(needle) if needle in haystack else -1
Enter fullscreen mode Exit fullscreen mode

Top comments (0)