第K序元素查找
描述
在無排序的一個列表中查找第k個最大元素。
例如, 給定3,2,1,5,6,4和k=2,返回5。
注意: 假設k總是有效的,0 <= k <=數組的長度
輸入格式
輸入有兩行:
1. 一個列表,表示一組數據。
2. 一個整數,表示要查找元素的第K序。
輸出格式
輸出為一個數值,表示第K序元素。
輸入輸出示例
| 輸入 | 輸出 | |
| 示例 1 | |
|
代碼(sorted)
ls = eval(input()) k = int(input()) ls = sorted(ls,reverse=True) print(ls[k-1])
代碼(sort)
ls = eval(input()) k = int(input()) ls.sort(reverse=True) print(ls[k-1])
eval()
描述
eval() 函數用來執行一個字符串表達式,並返回表達式的值。
語法
以下是 eval() 方法的語法:
eval(expression[, globals[, locals]])
參數
- expression -- 表達式。
- globals -- 變量作用域,全局命名空間,如果被提供,則必須是一個字典對象。
- locals -- 變量作用域,局部命名空間,如果被提供,可以是任何映射對象。
返回值
返回表達式計算結果。
Python3 sorted() 函數
描述
sorted() 函數對所有可迭代的對象進行排序操作。
語法
sorted 語法:
sorted(iterable, key=None, reverse=False)
參數說明:
- iterable -- 可迭代對象。
- key -- 主要是用來進行比較的元素,只有一個參數,具體的函數的參數就是取自於可迭代對象中,指定可迭代對象中的一個元素來進行排序。
- reverse -- 排序規則,reverse = True 降序 , reverse = False 升序(默認)。
返回值
返回重新排序的列表。
Python3 List sort()方法
描述
sort() 函數用於對原列表進行排序,如果指定參數,則使用比較函數指定的比較函數。
語法
sort()方法語法:
list.sort( key=None, reverse=False)
參數
- key -- 主要是用來進行比較的元素,只有一個參數,具體的函數的參數就是取自於可迭代對象中,指定可迭代對象中的一個元素來進行排序。
- reverse -- 排序規則,reverse = True 降序, reverse = False 升序(默認)。
返回值
該方法沒有返回值,但是會對列表的對象進行排序。
sort 與 sorted 區別
sort 是應用在 list 上的方法,sorted 可以對所有可迭代的對象進行排序操作。
list 的 sort 方法返回的是對已經存在的列表進行操作,而內建函數 sorted 方法返回的是一個新的 list,而不是在原來的基礎上進行的操作。
