Jinil Choi

문제가 이상함.

n번째 를 기준으로 정렬을 하라고 하는데.
도대체 무슨말씀이신지.
그래서 주어진 문제를 보니, 'bed'를 중심으로 순서가 바뀌어 있어서
reverse()를 사용했는데. 결국은 제출하니 에러가 나네요.
도대체 어떤 정렬을 말하는건지를 모르겠네요....

작성중인 코드
def strange_sort(strings, n):

    temp_string = strings[n]
    strings.remove(temp_string)
    strings.reverse()
    strings.insert(n,temp_string)
    return strings

str1 = ["sun", "bed", "car"]
num = 1
print(strange_sort(str1, num))
1 개의 답변

해당 문제는 리스트의 아이템을 정렬하는 기준을 각 아이템(string type) 인덱스 n으로 설정하는 문제입니다.
n=1일 때 ["sun", "bed", "car"] 이 ["car", "bed", "sun"]으로 정렬되는 이유는

"sun"의 1번째 인덱스 값은 "u"이고,
"bed"의 1번째 인덱스 값은 "e"이고,
"car"의 1번째 인덱스 값은 "a"이기 때문에

"a" < "e" < "u" 이므로 1번째 인덱스를 기준으로는 "car" < "bed" < "sun" 으로 계산되기 때문입니다.

  • 김정길
    저도요. 문제에 보강 설명이 필요해 보이네요.^^ ― 김정길 2017.8.18 11:24
  • 김주회
    저도 질문자와 같은 생각을 했다가, 답변을 보고 이해를 했습니다. ― 김주회 2017.8.18 11:24
  • frhyme
    아 이렇게 말씀하시니 알겠네요. ― frhyme 2017.8.18 11:24
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.