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
*/