algo lev-1 제일 작은 수 제거하기 (python)

less than 1 minute read

정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요.

(조건: 인덱스 i,j에 대해 i != j 이면, arr[i] != arr[j])

출처 : 프로그래머스 Level1

내가 푼 풀이

min()index()를 사용해서 배열에서 가장 작은 값의 인덱스 값을 구하고, pop()을 사용해서

해당 값을 제외해서 풀었다.

index() 사용하기.py

def solution(arr):
    if len(arr) > 1 :
        arr.pop(arr.index(min(arr)))
        return arr
    else :
        return [-1]

다른 사람의 풀이

remove() 사용하기 .py

def solution(arr):
    if len(arr) > 1 :
        arr.remove((min(arr)))
        return arr
    else :
        return [-1]

배운 점

1) array.remove(x) 를 알게 되었다

  • array에서 처음 만난 x를 ‘한 개’ 제거 한다.

    Remove the first occurrence of x from the array (출처)

    arr = [4,3,1,2,1]
    arr.remove(1)
    print(arr)  # [4,3,2,1]
    

Categories:

Updated:

Comments