C++ STL-연결리스트(std::list)-사용법-링크드리스트
값 삽입 std::list list1 = {1, 2, 3, 4, 5}; list.push_back(6); // {1, 2, 3, 4, 5, 6,} list.insert(next(list1.begin()), 0); // {1, 0, 2, 3, 4, 5, 6} list.insert(list.end(), 7); // {1, 0, 2, 3, 4, 5, 6, 7} 값 제거 std::list list1 = {1, 2, 3, 4, 5}; list.pop_back(); // {1, 2, 3, 4} 벡터와 달리 연결 리스트에서는 삽입 또는 삭제 동작에서 원소를 이동할 필요가 없으며 반복자가 무효화되지 않는다 //벡터 std::vector vec = {1, 2, 3, 4, 5}; auto v_it4 = vec.begin(..
2023. 9. 19.
C++ STL-단방향리스트(std::forward_list)-사용법
std::forward_list fwd_list = { 1,2,3 }; fwd_list.push_front(0); //맨 앞에 0 추가: {0, 1, 2, 3} std::forward_list::iterator it = fwd_list.begin(); fwd_list.insert_after(it, 5); //맨 처음 원소 뒤에 5 추가: {0, 5, 1, 2, 3} fwd_list.insert_after(it, 6); //맨 처음 원소 뒤에 6 추가: {0, 6, 5, 1, 2, 3} fwd_list.pop_front(); //맨 앞 원소 삭제: {6, 5, 1, 2, 3} it = fwd_list.begin(); fwd_list.erase_after(it); //맨 앞 다음 원소 삭제: {6, 1, 2..
2023. 9. 19.
C++ STL-벡터(std::vector)-사용법
다양한 선언 방법 std::vector vec; //크기가 0인 벡터 선언 std::vector vec = {1,2,3,4,5}; //지정한 초기값으로 이루어진 크기가 5인 벡터 선언 std::vector vec(10); //크기가 10인 벡터 선언 std::vector vec(10, 5); //크기가 10이고, 모든 원소가 5로 초기화된 벡터 선언 값 추가 std::vector vec; //비어 있는 벡터 생성: {} vec.push_back(1); //맨 뒤에 1 추가: {1} vec.push_back(2); //맨 뒤에 2 추가: {1, 2} vec.insert(vec.begin(), 0); //맨 앞에 0 추가: {0, 1, 2} vec.insert(find(vec.begin(), vec.end(..
2023. 9. 19.