Algorithm/프로그래머스

[기초/파이썬] 프로그래머스 - 접미사 배열

제티맛초코 2024. 12. 24. 03:18

https://school.programmers.co.kr/learn/courses/30/lessons/181909?language=python3

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr


 

내 코드 

def solution(my_string):
    answer = []
    for i in range(len(my_string)):
        answer.append(my_string[i:])

    return sorted(answer)
더보기

풀이과정

 

# 설명이 헷갈릴 수 있으므로, 예시 1,2번을 참고해서 문제를 해석한다

# (예시 1번) banana, anana, nana, ana, na, a가 출력된다. 즉 banana에서 [특정 글자:끝 글자(a)]로 단어를 뽑은 것이다. 이때 첫 글자인 b에서 하나씩 넘어가며 시작점(=특정 글자)을 달리하여 글자를 만들었음을 알 수 있다.

그래서 시작점을 i로 잡았다

 

# 가능하면 원본 데이터를 변경하지 않기 위해  sort()대신 sorted()를 사용했다.

 

다른 사람 코드  

#

 


깨달은 점

https://wikidocs.net/233746

 

5-09. Sort : Sorted(python)

Python에서 리스트와 같은 반복 가능한(iterable) 객체를 정렬하는 데에는 주로 `sorted()` 함수와 리스트 타입의 `sort()` 메서드 두 가지 방법이 사용됩니…

wikidocs.net

 

sorted()

- 원본 데이터를 변경하지 않는다

- 어떤 반복 가능한 객체도 인자로 받는다

sorted(iterable, key=None, reverse=False)

 

sort()

- 원본 리스트가 변경된다

- 리스트 타입에서만 사용 가능

- 반환값이 None

list.sort(key=None, reverse=False)