Javascript를 사용하는 그래프의 BFS 및 DFS만

WBOY
풀어 주다: 2024-08-22 22:37:07
원래의
294명이 탐색했습니다.

Only BFS and DFS in Graph using Javascript

이 기사는 두 그래프 접근 방식을 모두 사용하여 BFS 및 DFS 순회를 수행하는 그래프의 간단한 부분입니다

  1. 인접 매트릭스(BFS) 사용
  2. 인접 목록(DFS) 사용
const adjMatrix = [ [0, 1, 1, 0, 0], [1, 0, 0, 1, 0], [1, 0, 0, 0, 1], [0, 1, 0, 0, 1], [0, 0, 1, 1, 0] ]; const BFS = () => { const q = [0]; const visited = [0]; let path = ''; while(q.length) { const value = q.shift(); path += value; for(let j = 0; j< adjMatrix.length; j++) { // j Means the Node present / not in visited List if (adjMatrix[value][j] && visited.indexOf(j) < 0) { q.push(j); visited.push(j); } } } console.log(path); } BFS(); // 01234
로그인 후 복사
const adjList = { 0: [1, 2], 1: [0, 3], 2: [0, 4], 3: [1, 4], 4: [2, 3] } const DFS = () => { const stack = [0]; const visited = [0]; let path = ''; while(stack.length) { const value = stack.pop(); path += value; for(let item of adjList[value]) { if (visited.indexOf(item) < 0) { stack.push(item); visited.push(item); } } } console.log(path); } DFS();// 02431
로그인 후 복사

그래프에 대한 자세한 내용은 아래 링크를 확인해주세요.

Javascript를 이용한 그래프 데이터 구조

위 내용은 Javascript를 사용하는 그래프의 BFS 및 DFS만의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!