앞에서 Graph, Tree, BST에 대해서 공부했다. 그렇다면, 이것들을 어떻게 컴퓨터에 입력할 수 있을까??

<aside> 💡 정답은 인접행렬과 인접리스트이다.

</aside>

※ 인접해있다 : 연결되어 있다

인접행렬

Untitled

이것을 코드로 표현하자면 이렇게 된다.

Untitled

bool a[4][4] = {
{0, 1, 1, 1},
{1, 0, 1, 0},
{1, 1, 0, 0},
{1, 0, 0, 0},
};

Code로 인접행렬 사용해보기

bool a[V][V];
for(int i = 0;i < V; i++){
	for(int j = 0; j < V; j++){
		if(a[i][j]){
			//출력하는 로직
			cout << i << "부터 " << j << "까지 경로가 있습니다.\\n";
			// 해당 정점으로 부터 탐색하는 로직
			bfs(i);
			dfs(i);
		}
	}
}