Algorithm/Data Structure 2

[C++] 이차원 벡터

※ 책『Do it! 알고리즘 코딩테스트 (C++편 ) 』에 기반한 글입니다. 코딩 테스트 문제에서 그래프와 관련된 알고리즘이 자주 등장하는데, 이때 그래프 구조를 표현하는 데 많이 사용하는 것이 이차원 벡터이다.우선 2차원 벡터의 선언 및 사용법은 아래 블로그에서..https://leeeegun.tistory.com/3 [C++ STL] 2차원 vector 선언 및 사용법※ 이 포스팅은 기본적으로 vector에 대한 개념을 알고 있다는 전제하에 작성. 우선 2차원 vector의 선언에 앞서 일반적인 vector 선언을 살펴보면, 1 2 vector v; v.pushback(7); 위와 같은 형식으로 특정한leeeegun.tistory.com이차원 벡터를 이용한 그래프 구현01단계. 이차원 벡터 선언과..

[자료구조] Linked List (1)

[C언어로 쉽게 풀어쓴 자료구조 / 천인국 / 생능출판]을 토대로 쓴 글입니다.리스트(List): 차례대로 항목들을 나열하여 자료를 정리하는 방법리스트의 항목은 순서 또는 위치를 갖는다 연산- 삽입 연산: 리스트에 새로운 항목을 추가- 삭제 연산: 리스트에서 항목을 삭제- 탐색 연산: 리스트에서 특정한 항목 찾기 구현배열? 가장 간단하게 리스트 구현할 수 있음, 순차적으로 메모리가 할당된다- 장점: 구현이 간단하고 속도가 빠르다- 단점: 리스트의 크기가 고정되는 점 -> 메모리 issue와 관련된다 연결 리스트- 장점: 크기가 제한되지 않는다. 중간에서 쉽게 삽입, 삭제 가능하다- 구현이 배열에 비해 복잡하다=> 정리해야 할 자료가 많을 경우 연결 리스트를 사용하는 것이 유리하다 연결 리스트(Linked..