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,924 questions

51,857 answers

573 users

How to find the second biggest number in a list with Kotlin

3 Answers

0 votes
fun findSecondLargest(list: List<Int>): Int? {
    if (list.size < 2) return null
    
    var firstLargest = Int.MIN_VALUE
    var secondLargest = Int.MIN_VALUE
    
    for (number in list) {
        if (number > firstLargest) {
            secondLargest = firstLargest
            firstLargest = number
        } else if (number > secondLargest && number != firstLargest) {
            secondLargest = number
        }
    }
    
    return if (secondLargest == Int.MIN_VALUE) null else secondLargest
}

fun main() {
    val list = listOf(3, 14, 4, 1, 5, 90, 2, 6, 85, 7)
    
    println("Second largest number is: ${findSecondLargest(list)}")
}


 
/*
run:

Second largest number is: 85
 
*/

 



answered Jan 19, 2025 by avibootz
edited Jan 19, 2025 by avibootz
0 votes
fun findSecondLargest(list: List<Int>): Int? {
    if (list.size < 2) return null
    
    val sortedNumbers = list.sortedDescending()
    
    return sortedNumbers[1]
}

fun main() {
    val list = listOf(3, 14, 4, 1, 5, 90, 2, 6, 85, 7)
    
    println("Second largest number is: ${findSecondLargest(list)}")
}


 
/*
run:

Second largest number is: 85
 
*/

 



answered Jan 19, 2025 by avibootz
0 votes
fun findSecondLargest(list: List<Int>): Int? {
    return list.distinct().sortedDescending().getOrNull(1)
}

fun main() {
    val list = listOf(3, 14, 4, 1, 5, 90, 2, 6, 85, 7)
    
    println("Second largest number is: ${findSecondLargest(list)}")
}


 
/*
run:

Second largest number is: 85
 
*/

 



answered Jan 19, 2025 by avibootz
...