轉 Python3找出List中最大/最小的N個數及索引
# -*- coding: utf-8 -*-
import heapq
nums = [1, 8, 2, 23, 7, -4, 18, 23, 24, 37, 2]
# 最大的3個數的索引
max_num_index_list = map(nums.index, heapq.nlargest(3, nums))
# 最小的3個數的索引
min_num_index_list = map(nums.index, heapq.nsmallest(3, nums))
print(list(max_num_index_list))
print(list(min_num_index_list))
轉自https://blog.csdn.net/ns2250225/article/details/80118621,侵請聯刪
- 1
相關推薦
轉 Python3找出List中最大/最小的N個數及索引
# -*- coding: utf-8 -*- import heapq nums = [1, 8, 2, 23, 7, -4, 18, 23, 24, 37, 2] # 最大的3個數的索引 max_num_index_list = map(nums.index, heapq.nlarges
轉 Python3找出List中最大/最小的N個數及索引
# -*- coding: utf-8 -*- import heapq nums = [1, 8, 2, 23, 7, -4, 18, 23, 24, 37, 2] # 最大的3個數的索引 max_num_index_list = map(nums.index, hea
python 找出list中最大或者最小几個數的索引
nums = [1,8,2,23,7,-4,18,23,24,37,2] result = map(nums.index, heapq.nlargest(3, nums)) temp=[] Inf =
Dijkstra 算法,用於對有權圖進行搜索,找出圖中兩點的最短距離
我們 全部 保持 blog 短路徑 找到 gif動畫 信息 初始 Dijkstra 算法,用於對有權圖進行搜索,找出圖中兩點的最短距離,既不是DFS搜索,也不是BFS搜索。 把Dijkstra 算法應用於無權圖,或者所有邊的權都相等的圖,Dijkstra 算法等同於BFS搜
演算法練習08 找出字串中出現次數最多的字元
題目 找出一個字串中出現次數最多的字元 const str = 'asdfaaaa' 最後的返回值是字串'a' 實現 嗯,我略加思考(半個小時左右),給出了一個複雜的方案,一個屎一般的方案 屎一般的方案 我的方案是利用redcue,計算出了每個字串出現的頻次
陣列:找出陣列中重複元素最多的數
題目描述: 如何找出陣列中重複元素最多的數 思路: 使用Map對映表記錄每一個元素出現的次數,然後判斷次數大小,進而找出重複次數最多的元素。key表示陣列的元素,value表示這個元素在陣列中出現的次數。最後對map進行遍歷。 程式碼: /** * 使用map
python找出序列中出現次數最多的元素之Counter物件
解決此類問題我們將用到collections模組中的Counter類,並直接呼叫Counter類的most_common()方法或得答案。 用下面的例子來講解具體用法: 基本用法 from col
找出矩陣中含有0最多的一行(find the longest row of zero)
對於一個n*n的矩陣,其中只包含有0,1兩種元素且,所有的0都在1之前,請找出矩陣中0最多的一行。(Given an N-by-N matrix of 0s and 1s such that in each row no 0 comes before a 1, find
問題6: 找出字串中出現次數最多的字母及其出現的次數
這好像是華為機試的一道題目,我採用JAVA來完成,用JAVA也可以用其他方法。 我用一個比較簡單的方法,程式碼如下: public class Str{ public static void main(String[] args){ String str =
找出陣列中重複次數最多的數
方法一:如果相同的數是連續出現 從第一個數開始,與它後面的數比較,如果相同,計算+1,如果不等,計數置為1.同時保持此時的計數次數和此時的元素; #include<stdio.h> in
如何找出陣列中重複元素最多的數
package java程式設計師面試筆試寶典; import java.util.Collections; import java.util.HashMap; import java.util.Ma
Python中找出陣列中第二大的數
已知numpy函式庫中max和argmax函式可以得出一個數組中最大的成員以及所在位置: import numpy as np arr = [2, 3, 4, 1, 7, 6, 5] print("# arr中最大的數為{},位於第{}位".format(np.max(arr), np.a
找出陣列中重複次數最多的元素
思路: 最簡單的方法就是定義一個數組b把相同的元素放到對應位置,如果陣列a的元素等於這個下標,那麼這個下標對應的值就加1,最後找出這個陣列中最大值返回下標,這個方法浪費很大空間,不推薦。 新的思路:採用map,定義一個map,初始值預設為0,迴圈遍歷陣列a,
找出陣列中第二大的值
如何找出陣列中的第二大數 演算法思路: 方法1: 快速排序後根據陣列下標獲得陣列中第二大的值 方法2: (1)首先定義一個變數來儲存陣列的最大數,初始值為陣列首元素;另一個變數用來儲存陣列元素的第二大數,初始值為最小負數 -32767,然後遍歷陣列元素。
找出list中的不同元素、刪除兩個list中相同的物件
package com.test; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; /** * *
如何找出陣列中重複次數最多的數
eg 陣列{1,1,2,2,3,4,4,4,4,5,5,5,6,6} 元素1出現的次數為2, 元素2出現的次數為2,元素3出現的次數為1,元素4出現的次數為4,元素5出現的次數為3,元素6出現的次數
找出陣列中出現次數最多的數字
#include <stdio.h> #include <stdlib.h> /* run this program using the console pauser or add your own getch, system("pause") or
找出陣列中出現次數最多的那個數——主元素問題
方法一:以空間換時間,可以定義一個計數陣列int count[100],用來對陣列中數字出現的次數進行計數(只能針對陣列中數字的範圍1~1000),count陣列中最大的元素對應的下標,即為出現次數最多的那個數。程式碼如下: #include <iostream&g
如何找出陣列中第二大的數
package java程式設計師面試筆試寶典; public class 題8_5_2找出陣列中第二大的數 { public static void main(String[] args) {
問題8:如何找出陣列中重複次數最多的數?
一種方法是以空間換時間,可以定義一個數組 int count[MAX],並將其陣列元素都初始化為0,然後執行for(int i=0; i<100; i++) count[A[i]]++操作,在count中找最大的數,即為重複次數最多的數。 程式碼如下: