Exercise 9: Find Second Largest Number
Problem Statement
Create a function `secondLargest(arr)` that returns second largest number from array.
Example: secondLargest([3, 7, 2, 9, 1]) → 7
Sample Output:
secondLargest([3, 7, 2, 9, 1]) => 7 secondLargest([10, 10, 5]) => 10 secondLargest([1]) => null
Solution
const secondLargest = (arr) => {
const nums = arr.filter(n => typeof n === "number" && Number.isFinite(n));
if (nums.length < 2) return null;
const sorted = [...nums].sort((a, b) => b - a);
return sorted[1];
};Explanation
Overall Goal:
- Array me se second largest number find karna.
Line 1: Function header
const secondLargest = (arr) => {
Line 2: Filter valid numbers
const nums = arr.filter(n => typeof n === "number" && Number.isFinite(n));
Line 3: Validation
if (nums.length < 2) return null;
Line 4: Sort descending
const sorted = [...nums].sort((a, b) => b - a);
Line 5: Return second
return sorted[1];
Real world:
- Leaderboards: second place.
- Analytics: second highest values.