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

Semrush - keyword research tool

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth
Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

42,709 questions

55,473 answers

573 users

How to find the second largest number in array in TypeScript

3 Answers

0 votes
function secondLargest(arr: number[]): any {
    if (arr.length < 2) return null; // Handle edge case for arrays with less than 2 elements
     
    let sortedArr: number[] = [...arr].sort((a, b) => b - a);
     
    return sortedArr[1];
}
 
let numbers: number[] = [3, 14, 14, 1, 1, 1, 90, 2, 6, 86, 7];
 
console.log(secondLargest(numbers)); 
 
 
 
/*
run:
 
86
 
*/
 

 



answered Apr 23, 2025 by avibootz
0 votes
function secondLargest(arr: number[]): any {
    if (arr.length < 2) return null; // Handle edge case for arrays with less than 2 elements
     
    let first: number = -Infinity, second : number= -Infinity;
    for (let num of arr) {
        if (num > first) {
            second = first;
            first = num;
        } else if (num > second && num < first) {
            second = num;
        }
    }
     
    return second;
}
 
let numbers: number[] = [3, 14, 14, 1, 1, 1, 90, 2, 6, 86, 7];
 
console.log(secondLargest(numbers)); 
 
 
 
/*
run:
 
86
 
*/

 



answered Apr 23, 2025 by avibootz
0 votes
function secondLargest(arr: number[]): any {
    if (arr.length < 2) return null; // Handle edge case for arrays with less than 2 elements
     
    let uniqueArr: number[] = [...new Set(arr)];
    if (uniqueArr.length < 2) return null; // Handle edge case for arrays with less than 2 unique elements
    uniqueArr.sort((a, b) => b - a);
     
    return uniqueArr[1];
}
 
let numbers: number[] = [3, 14, 14, 1, 1, 1, 90, 2, 6, 86, 7];
 
console.log(secondLargest(numbers)); 
 
 
 
/*
run:
 
86
 
*/
 

 



answered Apr 23, 2025 by avibootz
...