文字列に[Level 1]Pythonを任意に並べ替える
1461 ワード
問題の説明
リスト文字列が文字列で構成され、整数nを有する場合、各文字列のインデックスnのn番目の文字に基づいて昇順にソートしようとします.たとえば、文字列が[「sun」、「bed」、「car」であり、nが1の場合、文字列は各単語インデックス1の文字「u」、「e」、および「a」でソートされます.
せいげんじょうけん
stringは、長さが1以上50未満の配列である.
stringの要素は小文字で構成されています.
stringの要素は、1または100より長い文字列です.
すべての文字列の要素長はnより大きい.
インデックス1に同じ文字列を持つ複数の文字がある場合、前の文字列はアルファベット順に前に並べられます.
I/O例
I/O例説明
I/O例1
「sun」、「bed」および「car」の最初のインデックス値は、それぞれ「u」、「e」および「a」である.文字列を整列させると、car、bad、sunになります.
I/O例2
「abce」および「abcd」、「cdx」の2番目のインデックス値は、それぞれ「c」、「c」および「x」である.したがって、ソート後、「cdx」は最後に位置します.「abce」および「abcd」は、アルファベット順に「abcd」よりも優先されるため、答えは「abcd」、「abce」および「cdx」である.
コード#コード#
def solution(strings, n):
answer = []
a_dict = {}
strings.sort()
for idx, s in enumerate(strings):
a_dict[idx] = s[n]
a_dict = sorted(a_dict.items(), key=lambda x : x[1]) # Value 값에 따른 정렬
for i in a_dict:
answer.append(strings[i[0]])
return answer
ラーニング:Value値によるバイナリ、lambda式のソートsorted(d.items(), key=lambda x: x[1]) # 오름차순
sorted(d.items(), key=lambda x: x[1], reverse=True) # 내림차순
他人が書いたコード
def solution(strings, n):
strings.sort()
return sorted(strings, key=lambda x: x[n])
Reference
この問題について(文字列に[Level 1]Pythonを任意に並べ替える), 我々は、より多くの情報をここで見つけました https://velog.io/@skrudfhr02/문자열-내-마음대로-정렬하기-Level-1-Pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol