요소가 정수인 목록이 제공됩니다. 상대 순서를 찾아야 합니다. 즉, 오름차순으로 정렬된 경우 해당 위치의 인덱스를 찾아야 합니다.
정렬 및 색인 사용
먼저 전체 목록을 정렬한 다음 정렬 후 각 목록의 인덱스를 찾습니다.
예
listA = [78, 14, 0, 11] # printing original list print("Given list is : \n",listA) # using sorted() and index() res = [sorted(listA).index(i) for i in listA] # printing result print("list with relative ordering of elements : \n",res)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given list is : [78, 14, 0, 11] list with relative ordering of elements : [3, 2, 0, 1]
열거 및 정렬
열거 및 정렬된 함수를 사용하여 각 요소를 검색한 다음 열거 및 정렬된 함수를 포함하는 사전 컨테이너를 만듭니다. map 함수를 사용하여 이 컨테이너를 통해 각 요소를 가져옵니다.
예
listA = [78, 14, 0, 11] # printing original list print("Given list is : \n",listA) # using sorted() and enumerate temp = {val: key for key, val in enumerate(sorted(listA))} res = list(map(temp.get, listA)) # printing result print("list with relative ordering of elements : \n",res)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given list is : [78, 14, 0, 11] list with relative ordering of elements : [3, 2, 0, 1]