日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python 如何在list中找Topk的數值和索引

瀏覽:39日期:2022-06-19 09:19:29
需求:

對于一個python list 或者numpy數組,我需要找到這個list中最大的K個數及其對應的下標。

解決方式:

1. 可以構造字典通過排序解決,不過代碼量較多。

2. 使用heapq庫,可以直接獲取最大值的下標和數值。

import heapqa = [4,2,6,1,9,9] # 獲取下標, 輸出為[4, 5, 2]heapq.nlargest(3, range(len(a)), a.__getitem__) # 獲取數值, 輸出為[9, 9, 6]heapq.nlargest(3,a)

如果要取最小的數,使用 nsmallest即可

補充:Python 利用中間值求TopK 算法

算法思想

首先我們要思考,我要做什么?解決什么問題?

TopK問題,找出一組數據中的前K個最大值或者最小值,這個數據是否重復?要做去重處理?

ok 我們明確我們做什么了 ,那介紹的python處理的topK 算法過程是怎么樣的呢?

如果用排序那就沒必要引入topK 了,當數據強大的時候選取TopK 可以省略很多排序的計算,至于有多優化自己去思考下,就比如排列組合的C,A的區別,一個是抽取,一個是抽取并排列…

以下以找出TopK 的最大值為例,最小值的可以自己修改一下下就可以

介紹的算法思想是利用中間值,將數列分為三部分 ,

【比中間值大的列表】,中間值,【比中間值小的列表】

那么我們當比較

【比中間值大的列表】的個數 == k

的時候就可以得出前K個最大值了,因此

重點就是找出這個中間值如何找出中間值

以列表的第一個數開始為中間值,拆分為三部分

if 【比中間值大的列表】的個數 == k:return 中間值 #程序出口,結束。

if 【比中間值大的列表】的個數 < k :

·····繼續在【比中間值小的列表】找

·····K - 【比中間值大的列表】的個數 -1 個數

(為什么要減一,1是前一次的中間值,分的三部分,前部分后部分都沒有包含中間值,因此…)

if 【比中間值大的列表】的個數 > k :

…也就是說比中間值大的列表比K還大,那就在這個列表中繼續找就行

結合代碼和注釋看

如果要找最小值,只需要改一下就ok ,還可以設置一個布爾值的輸入,來做前K個最大值最小值

#2019 11 04#author 半斤地瓜燒#TopK 算法,找出序列中前K個最大值的#輸入一個seq# 輸出以seq[0]為中間值 劃分的三個部分,中間值,比這個值大的seq ,比這個值小的seq,# 即splitNum,theBig,theSmalldef Split_Seq(seq): splitNum = seq[0] seq = seq[1:]#兩個部分都不包含中間值,因此切片去除seq[0] theBig = [x for x in seq if x >= splitNum] theSmall = [x for x in seq if x < splitNum] return splitNum,theBig,theSmall#找出中間值def topKNum(seq,k): splitNum, theBig, theSmall = Split_Seq(seq) theBigLen = len(theBig)if k == theBigLen:return splitNum#出口,返回這個中間值, # 為什么不直接返回thebig?因為存在遞歸的原因thebig 不是在初始的seq找出來的 #需要重新Split,即可,讀者自己思考 # 大值的列表中還未夠K個數的情況, if k > theBigLen:return topKNum(theSmall,k-theBigLen-1) # 大值的列表中大于K個數的情況 return topKNum(theBig,k)#由中間值找出TopK個值,<list>def getTopK(seq,k):return [i for i in seq if i > topKNum(seq, k)]if __name__ == ’__main__’: alist = [7, 3, 5, 1,885,234,2211,222,22, 2, 11, 2, 115] print('===為了驗證,引入排序觀看===', sorted(alist,reverse= True)) print(getTopK(alist, 3))

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
五月天激情综合网| 国产精品毛片一区二区三区| 国产图片一区| 精品国产精品久久一区免费式| 亚洲永久av| 日韩欧美精品一区| 亚洲精品无播放器在线播放| 国产精品.xx视频.xxtv| 欧美福利在线| 麻豆高清免费国产一区| 黄色亚洲大片免费在线观看| 国产高清一区| 日本少妇一区| 欧美日韩在线精品一区二区三区激情综合| 欧美一级鲁丝片| 久久蜜桃精品| 久久久蜜桃一区二区人| 日韩欧美中文在线观看| 激情久久久久久久| 亚洲色图综合| 成人精品天堂一区二区三区| 日精品一区二区三区| 一区二区精品| 久久亚洲精品伦理| 日韩欧美一区免费| 国产亚洲一卡2卡3卡4卡新区| 国产精品分类| 精品一区在线| 日本激情一区| 激情综合自拍| 国产超碰精品| 国产精品一区二区三区av| 国产一区91| 国产精品视频一区二区三区综合 | 久久精品av麻豆的观看方式| 久久精品国产福利| 欧美天堂在线| 久久精品动漫| 欧美午夜网站| 日韩欧美激情| 综合在线一区| 精品一区电影| 麻豆视频观看网址久久| 日韩在线成人| 一区二区国产精品| 精品资源在线| 精品香蕉视频| 国产欧美69| 激情欧美一区二区三区| 欧美/亚洲一区| 九色porny丨国产首页在线| 国产一区二区精品久| 欧美不卡在线| 欧美一区二区三区高清视频| www成人在线视频| 日本成人在线视频网站| 日韩激情啪啪| 日韩福利视频网| 香蕉久久国产| 亚洲精品三级| 青草国产精品| 久久中文字幕一区二区三区| 蜜桃久久久久| 日韩高清不卡一区| 91亚洲精品视频在线观看| 亚洲精品美女91| 婷婷综合社区| 综合国产精品| 免费久久精品| 黄色成人91| 亚洲乱码视频| 国产精品一区毛片| 国产精品网站在线看| 色婷婷色综合| 亚洲午夜精品久久久久久app| 国产亚洲久久| 国产成年精品| 91精品国产调教在线观看| 国产欧美高清| 久久精品亚洲欧美日韩精品中文字幕| se01亚洲视频 | 一区二区三区午夜视频| 亚洲青青久久| 国产欧美日韩在线观看视频| 国产精品1区在线| 日韩欧美综合| 欧美福利在线| 日韩不卡一区二区三区| 一区二区国产精品| 欧美性www| 欧美香蕉视频| 国产伊人久久| 自由日本语亚洲人高潮| 在线看片日韩| 亚洲精品乱码| 福利一区在线| 中文欧美日韩| 亚洲欧美日韩专区| 国产精品密蕾丝视频下载| www.九色在线| 亚洲精品护士| 三上亚洲一区二区| 只有精品亚洲| 日本欧美国产| 午夜在线一区| 国产一区不卡| 久久久久欧美精品| 免费人成黄页网站在线一区二区 | 不卡在线一区| 一区二区国产在线| 国产一区二区三区不卡视频网站 | 日本午夜精品一区二区三区电影| 午夜日韩av| 成人精品天堂一区二区三区| 色综合视频一区二区三区日韩| 欧美影院视频| 一区二区精品| 精品国产乱码久久久| 欧美a级一区| 久久伊人亚洲| 男女激情视频一区| 久久精品人人| 欧美日一区二区三区在线观看国产免 | 久久亚洲国产精品尤物| 精品一区三区| 日韩国产高清在线| 亚洲免费播放| 青青久久av| 国产精品www.| 欧美sm一区| 亚洲一区二区动漫| 欧美成人精品三级网站| 久久狠狠亚洲综合| 国产精品大片免费观看| 日韩在线观看一区二区| 久久久久久自在自线| 成人久久一区| 国产精品多人| 亚洲69av| 久久精品色播| 精品亚洲a∨一区二区三区18| 日韩精品一级中文字幕精品视频免费观看| 国产精品www.| 免费av一区| 中文字幕在线看片| 国产剧情在线观看一区| 国产日韩电影| 国产伊人久久| 国产免费av国片精品草莓男男| 狠狠躁少妇一区二区三区| 国产伦精品一区二区三区视频 | 欧美日韩免费观看视频| 日韩一区二区三区精品| 国产在线观看91一区二区三区| 国产日韩一区二区三区在线播放| 免费观看在线综合色| 精品一区二区三区中文字幕视频| 日韩国产欧美三级| 亚洲a成人v| 国精品一区二区三区| 日韩高清成人| 日韩国产专区| 欧美亚洲一区二区三区| 国产精品不卡| 精品亚洲精品| 久久中文字幕av一区二区不卡| 亚洲成人日韩| 国产成年精品| 久久精品毛片| 欧美日韩精品免费观看视频完整 | 91av亚洲| 成人va天堂| 久久爱www成人| 另类小说一区二区三区| 美女久久99| 香蕉国产精品| 日韩专区在线视频| 亚洲综合专区| 日韩久久电影| 午夜av成人| 欧美丝袜一区| 久久电影一区| 日韩国产欧美三级| 久久国际精品| 国产区精品区| 在线观看亚洲精品福利片| 三级欧美韩日大片在线看| 日韩一区二区久久| 麻豆中文一区二区| 久久爱www.| 精品视频亚洲| 日本不卡一二三区黄网| 日韩高清不卡一区二区| 国产亚洲欧美日韩在线观看一区二区| 四虎4545www国产精品 | 国产乱人伦精品一区| 麻豆精品av| 日韩欧美激情| 开心激情综合| 成人看片网站|