DFS o BFS para un árbol no dirigido en JavaScript

Guía en español para recorrer árboles no dirigidos con DFS y BFS en JavaScript usando lista de adyacencia, con ejemplos y complejidad en Q2BSTUDIO.

31 ago 2025 • 3 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Cómo recorrer un árbol no dirigido con DFS y BFS en JavaScript y aplicarlo en proyectos reales de aplicaciones a medida. En Q2BSTUDIO, empresa de desarrollo de software y tecnología, usamos estas técnicas en soluciones de software a medida, ia para empresas y ciberseguridad. Si buscas un partner para transformar tus ideas en productos digitales de alto rendimiento, descubre nuestro enfoque de aplicaciones a medida y software a medida.

Qué es un árbol no dirigido. Es una estructura de nodos conectados por aristas sin ciclos y con un único camino entre cualquier par de nodos. Para programarlo de forma eficiente usaremos una lista de adyacencia, ideal por su simplicidad y rendimiento.

Representación en JavaScript con lista de adyacencia. Ejemplo de árbol con 4 nodos y aristas 0 1, 0 2, 2 3:

const graph=[[1,2],[0],[0,3],[2]]

DFS recursivo recorrido en profundidad. Visita un nodo, explora a sus vecinos y retrocede. Útil para tareas como detección de componentes, orden topológico en grafos dirigidos y exploraciones completas.

function dfsRec(g,start){ const visited=new Array(g.length).fill(false); const order=[]; function visit(u){ visited[u]=true; order.push(u); for(const v of g[u]){ if(!visited[v]) visit(v) } } visit(start); return order }

DFS iterativo con pila. Evita límites de recursión y da control explícito del recorrido.

function dfsStack(g,start){ const visited=new Array(g.length).fill(false); const stack=[start]; const order=[]; while(stack.length){ const u=stack.pop(); if(visited[u]) continue; visited[u]=true; order.push(u); for(let i=g[u].length-1;i>=0;i--){ const v=g[u][i]; if(!visited[v]) stack.push(v) } } return order }

BFS con cola recorrido en anchura. Recorre por niveles y encuentra distancias mínimas en número de aristas, ideal para calcular rutas más cortas en árboles y grafos no ponderados.

function bfs(g,start){ const visited=new Array(g.length).fill(false); const queue=[start]; visited[start]=true; const order=[]; while(queue.length){ const u=queue.shift(); order.push(u); for(const v of g[u]){ if(!visited[v]){ visited[v]=true; queue.push(v) } } } return order }

Reconstrucción de caminos con BFS. Guarda el padre de cada nodo para recuperar la ruta más corta entre start y un objetivo target.

function bfsParents(g,start){ const parent=new Array(g.length).fill(-1); const q=[start]; parent[start]=start; while(q.length){ const u=q.shift(); for(const v of g[u]){ if(parent[v]===-1){ parent[v]=u; q.push(v) } } } return parent } function buildPath(parent,start,target){ const path=[]; for(let v=target; v!==-1; v=parent[v]){ path.push(v); if(v===start) break } path.reverse(); return path }

Complejidad. Tanto DFS como BFS recorren cada arista y cada nodo una vez, con complejidad O V E y memoria O V. En árboles, E es V menos 1, por lo que son lineales y muy eficientes.

Buenas prácticas. 1 valida que la estructura sea un árbol si tu lógica lo requiere, 2 usa números o índices como identificadores para simplificar, 3 preferencia por BFS si buscas rutas mínimas, 4 preferencia por DFS para exploraciones completas y tareas de análisis estructural, 5 en producción, abstrae la cola y la pila para pruebas y métricas.

Aplicaciones reales. En Q2BSTUDIO usamos DFS y BFS en motores de recomendación, agentes IA, análisis de grafos de ciberseguridad, optimización de rutas y workflows de automatización. También los integramos con servicios cloud aws y azure, servicios inteligencia de negocio y power bi para trazar dependencias, linaje de datos y detección temprana de anomalías. Conoce cómo nuestra práctica de inteligencia artificial acelera soluciones de ia para empresas con modelos y agentes IA interoperables.

Resumen accionable. 1 representa tu árbol con lista de adyacencia, 2 usa dfsRec o dfsStack para exploración profunda, 3 usa bfs para niveles y rutas más cortas, 4 añade parents para reconstruir caminos, 5 monitoriza tiempos y memoria. Si necesitas un equipo experto para llevar estas ideas a producción con calidad enterprise, cuenta con Q2BSTUDIO en desarrollo de software a medida, ciberseguridad, servicios cloud aws y azure y analítica con power bi.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat