DEV Community

DPC
DPC

Posted on

3 1 2 2

Daily JavaScript Challenge #JS-101: Find the Maximum Depth of a Nested Array

Daily JavaScript Challenge: Find the Maximum Depth of a Nested Array

Hey fellow developers! 👋 Welcome to today's JavaScript coding challenge. Let's keep those programming skills sharp!

The Challenge

Difficulty: Medium

Topic: Recursion

Description

Develop a function to find the maximum depth of nested arrays. The function will receive an array as its input, which can contain other arrays to any depth, and it should return the maximum depth integer.

Ready to Begin?

https://www.dpcdev.com/

  1. Fork this challenge
  2. Write your solution
  3. Test it against the provided test cases
  4. Share your approach in the comments below!

Want to Learn More?

Check out the documentation about this topic here: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array

Join the Discussion!

  • How did you approach this problem?
  • Did you find any interesting edge cases?
  • What was your biggest learning from this challenge?

Let's learn together! Drop your thoughts and questions in the comments below. 👇


This is part of our Daily JavaScript Challenge series. Follow me for daily programming challenges and let's grow together! 🚀

javascript #programming #coding #dailycodingchallenge #webdev

Image of Datadog

Create and maintain end-to-end frontend tests

Learn best practices on creating frontend tests, testing on-premise apps, integrating tests into your CI/CD pipeline, and using Datadog’s testing tunnel.

Download The Guide

Top comments (1)

Collapse
 
annabelle1217 profile image
Annabelle Ng

Wow, that really took me some time 😂 Thank you for the question 🩷

const arrays = [1, [2, 3], [4, [5, [6, 7, [8]]]]]

function findMaxDepth (arr) {
  let countSet = [0];
  let count = 0
  countChildrenDepth(arr, count);
  return Math.max(...countSet);

  function countChildrenDepth (arr, count) {
    if (Array.isArray(arr)) {
      count++;
      countSet.push(count)
      console.log("arr", arr, "count", count, "countSet", countSet)
      arr.map ((item) => {
        countChildrenDepth(item, count);
      });
     }
  }
}

console.log("find max depth of nested arrays", findMaxDepth(arrays))
Enter fullscreen mode Exit fullscreen mode