본문 바로가기

벡터

(2)
[자료구조] 배열(array) 자료구조 - 배열자료구조론의 가장 기초적이고 가장 간단한 형태인 배열이다. 배열은 같은 크기, 같은 형태의 데이터를 나열해놓은 데이터를 말한다.좌표, 행렬 등에 활용되며,1차원 배열, 2차원 배열, 희소행렬 등 다양한 형태로 응용가능하다. 데이터형태 및 활용예배열은 메모리의 연속된 공간에 데이터를 저장한다.인덱스를 통해 데이터 위치를 확인하고 접근(액세스)한다. //C사용 예 int sample[5] = { 11, 22, 33, 44, 55 }; // int형의 크기가 5인 배열을 선언하고 값을 초기화 한다. 인덱스는 0~4까지 사용가능 printf("%d\n", sample[0]); //인덱스 0번 값을 출력(배열의 첫번째 값) -> 출력값 : 1printf("%d\n", sample[3]); //인덱..
[C++ STL] 벡터(vector) C++에서 배열의 인자는 상수이기 때문에 길이를 변경할 수 없다. 프로그래밍을 하다보면 동적인 길이의 배열을 생성해야하는 경우가 있다. C++에서 동적 배열을 생성할 수 있지만 배열의 크기를 늘리는 과정은 코드가 비효율적이되고 복잡하다. 벡터(Vector)는 런타임에 그 크기가 변경될 수 있는 배열과 같은 자료구조다. 벡터는 배열과 거의 유사하게 사용할 수 있다. 벡터는 인덱스구조를 사용하기 때문에 임의 접근이 가능하고 탐색이 빠르다. 하지만 인덱스구조를 항상 유지하기 위해서 임의의 위치에 있는 원소를 삽입 및 삭제하기 위해서는 많은 시간이 소요된다. 벡터는 라이브러리에 정의되어있고 네임스페이스 std에 정의되어있다. #include using namespace std; 벡터의 생성 벡터는 일반 템플릿 ..