Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,950 questions

51,892 answers

573 users

How to find the second largest elements in a list with Python

2 Answers

0 votes
def getTheSecondlargest(arr): 
    size = len(arr) 
   
    first = second = float('-inf')
    for i in range(0, size): 
        if arr[i] > first: 
            second = first 
            first = arr[i] 
        elif (arr[i] > second and arr[i] != first): 
            second = arr[i]; 
     
    if (second == float('-inf')): 
        return -1
    else: 
        return second
     
arr1 = [34, 3, 8, 2, 9, 4, 6] 
print(getTheSecondlargest(arr1)) 
   
arr2 = [1, 1, 2, 1, 1] 
print(getTheSecondlargest(arr2)) 
   
arr3 = [5, 5, 5, 5, 5, 5, 5] 
print(getTheSecondlargest(arr3)) 
   
   
   
   
       
'''
run:
       
9
1
-1
              
'''

 



answered Aug 19, 2021 by avibootz
edited Aug 19, 2021 by avibootz
0 votes
def getTheSecondSmallest(lst): 
    lst.sort()
     
    return lst[-2]
    
lst1 = [34, 3, 8, 2, 9, 4, 6] 
print(getTheSecondSmallest(lst1)) 
  
lst2 = [1, 1, 2, 1, 1] 
print(getTheSecondSmallest(lst2)) 
  
lst3 = [5, 5, 5, 5, 5, 5, 5] 
print(getTheSecondSmallest(lst3)) 
  
  
  
  
      
'''
run:
      
9
1
5
             
'''

 



answered Aug 19, 2021 by avibootz
edited Aug 19, 2021 by avibootz

Related questions

1 answer 84 views
1 answer 117 views
1 answer 155 views
3 answers 231 views
1 answer 161 views
...