Chloe Jungah Kim
Chloe Jungah Kim
A blogger who writes about everything.

[Leetcode] 34. Find First and Last Position of Element in Sorted Array

https://leetcode.com/problems/find-first-and-last-position-of-element-in-sorted-array/
[Leetcode] 34. Find First and Last Position of Element in Sorted Array

하나의 정렬된 리스트와 정수가 주어졌을 때, 주어진 정수(target)가 등장하는 처음과 끝의 인덱스를 찾는 문제

  • 리스트 내에 target이 없는 경우, [-1, -1]을 리턴한다.

Example 1

  • Input : nums = [5, 7, 7, 8, 8, 10], target = 8
  • Output : [3, 4]

Example 2

  • Input : nums = [5, 7, 7, 8, 8, 10], target = 6
  • Output : [-1, -1]

Example 3

  • Input : nums = [], target = 0
  • Output : [-1, -1]

Note

  • count를 통해 리스트 내에 target의 존재 여부를 확인하고, index를 통해 리스트 내에서 처음 등장하는 인덱스를 찾는다.
  • 정렬되어 있으므로, 첫 인덱스 + count - 1까지 등장한다.
1
2
3
4
5
6
7
8
class Solution:
    def searchRange(self, nums: List[int], target: int) -> List[int]:
        c = nums.count(target)
        if c == 0 :
            return [-1, -1]
        i = nums.index(target)
        res = [i, i + c - 1]
        return res