Q. 오늘 진행된 강의에서 학습한 내용은 무엇인가요?
그래프란 ?
그래프는 정점(Node)과 간선(Edge)으로 구성된 자료구조입니다. 정점은 객체를 나타내고, 간선은 정점 간의 관계를 나타냅니다. 예를 들어, 친구 관계를 나타내는 소셜 네트워크에서 사람들을 정점으로, 친구 관계를 간선으로 표현할 수 있습니다.
그래프는 다양한 실제 문제를 모델링하는 데 유용한 자료구조입니다. 예를 들어, 도시 간의 도로 네트워크, 컴퓨터 네트워크, 소셜 네트워크 등이 있습니다.
정점 (Node)
정점은 그래프의 기본 단위로, 개체나 객체를 나타냅니다. 예를 들어, 도시, 사람, 웹 페이지 등을 나타낼 수 있습니다.
간선 (Edge)
간선은 정점 간의 연결을 나타내며, 정점들 간의 관계를 정의합니다. 예를 들어, 도로, 친구 관계, 링크 등을 나타낼 수 있습니다.
방향 그래프와 무방향 그래프
그래프는 간선의 방향성에 따라 두 가지로 분류됩니다:
방향 그래프 (Directed Graph)
간선이 한쪽 방향으로만 연결된 그래프입니다. 즉, 정점 A와 B가 연결되어 있으면 A에서 B로는 이동할 수 있지만, B에서 A로는 이동할 수 없습니다.
무방향 그래프 (Undirected Graph)
간선이 양방향으로 연결된 그래프입니다. 즉, 정점 A와 B가 연결되어 있으면 A에서 B로, B에서 A로 이동할 수 있습니다.
가중치 그래프 (Weighted Graph)
가중치 그래프는 간선에 가중치가 부여된 그래프입니다. 예를 들어, 도로의 길이, 통화 요금 등을 나타낼 수 있습니다.
그래프의 표현 방법
그래프를 표현하는 두 가지 주요 방법은 인접 행렬과 인접 리스트입니다.
인접 행렬 (Adjacency Matrix)
그래프를 2차원 배열로 표현합니다. 정점 간의 연결 여부를 행렬로 나타냅니다.
특징:
- 정방 행렬을 사용하여 정점 간의 간선 유무를 1과 0으로 표시
- 메모리 사용이 많음 (N x N 행렬, N은 정점의 수)
- 간선의 존재 여부를 빠르게 확인 가능
인접 리스트 (Adjacency List)
그래프를 리스트의 리스트로 표현합니다. 각 정점에 연결된 정점들의 리스트를 저장합니다.
- 특징:
- 연결 리스트를 사용하여 간선 정보를 저장
- 메모리 사용이 적음 (간선의 수가 적은 경우 유리)
- 동적 그래프에 적합 (정점이나 간선의 추가/삭제가 빈번한 경우)
Q. 이번 주 진행된 팀 스터디에서 얻은 인사이트는 무엇인가요?
팀원들의 다양한 풀이 방법을 접하면서 새로운 해결책을 배울 수 있었고, 문제 해결 능력을 향상시키는 데 도움이 되었고, 덕분에 문제를 보는 시야가 넓어졌다.
항해99 취업 리부트 코스를 수강하고 작성한 콘텐츠 입니다.
https://hanghae99.spartacodingclub.kr/reboot
'IT 개발 관련 > [TIL]' 카테고리의 다른 글
[항해99 취업 리부트 코스 학습일지] 3주차 알고리즘 학습 Day 6 (0) | 2024.06.11 |
---|---|
[항해99 취업 리부트 코스 학습일지] 3주차 알고리즘 학습 Day 5 (0) | 2024.06.10 |
[항해99 취업 리부트 코스 학습일지] 3주차 알고리즘 학습 Day 3 (0) | 2024.06.07 |
[항해99 취업 리부트 코스 학습일지] 3주차 알고리즘 학습 Day 2 (0) | 2024.06.06 |
[항해99 취업 리부트 코스 학습일지] 3주차 알고리즘 학습 Day 1 (1) | 2024.06.05 |