Python - 排名元素索引


當需要確定資料結構中元素的索引排名時,定義一個把連結串列作為引數的方法。它迭代連結串列中的元素,在改變兩個變數的值之前執行某些比較。

示例

以下是對同一示例的演示

def find_rank_elem(my_list):
   my_result = [0 for x in range(len(my_list))]
   for elem in range(len(my_list)):
      (r, s) = (1, 1)
      for j in range(len(my_list)):
         if j != elem and my_list[j] < my_list[elem]:
            r += 1
         if j != elem and my_list[j] == my_list[elem]:
            s += 1

      my_result[elem] = r + (s - 1) / 2

   return my_result

my_list = [1, 3, 5, 3, 1, 26, 99, 45, 67, 12]
print("The list is :")
print(my_list)
print("The resultant list is :")
print(find_rank_elem(my_list))

輸出

The list is :
[1, 3, 5, 3, 1, 26, 99, 45, 67, 12]
The resultant list is :
[1, 3, 5, 3, 1, 7, 10, 8, 9, 6]

說明

  • 定義了一個名為“find_rank_elem”的方法,它把連結串列作為引數。

  • 迭代連結串列並將其儲存在連結串列變數中。

  • 再次迭代它,並檢查連結串列的某些元素是否匹配。

  • 如果匹配,則兩個值“r”和“s”都會發生改變。

  • 此連結串列將作為輸出返回。

  • 在方法外部,定義一個連結串列並顯示在控制檯上。

  • 透過傳遞此連結串列作為引數來呼叫方法。

  • 輸出顯示在控制檯上。

更新於:2021 年 9 月 21 日

485 次瀏覽

開啟你的 職業生涯

完成課程即可獲得認證

開始
廣告