배열이라고 하는 선형 순차 데이터 구조는 다른 데이터 구조와 마찬가지로 요소를 효과적으로 삽입, 삭제, 순회 및 업데이트하기 위해 특정 기능을 일련의 메모리 영역에 저장하는 데 사용됩니다. C++의 배열은 정적 배열입니다. 또한 C++에서는 정적 배열 내에 최대 Z개의 요소를 저장할 수 있습니다. C++에서 한 배열의 요소를 다른 배열 안에 푸시하는 방법을 살펴보겠습니다.
위의 예에서는 두 개의 배열 A와 B가 있음이 분명합니다. B를 A에 넣는 것은 B의 모든 요소를 배열 A에 삽입하는 것을 의미합니다. 이러한 요소는 A의 끝에 추가됩니다. 그러나 이를 달성하려면 한 가지, 즉 A의 남은 공석(즉, A의 최대 크기에서 A의 기존 요소 수를 뺀 값)이 B의 요소 수보다 크거나 같은지 확인해야 합니다. 그렇지 않으면 A로 푸시할 수 없습니다. 알고리즘과 C++ 구현 코드를 살펴보겠습니다.
배열 A와 B를 입력으로, A의 요소 수 n을 입력으로, B의 요소 m의 수를 입력으로 사용
A가 B 전체를 수용할 만큼 공간이 충분하다면
B의 각 요소 e에 대해 do
배열 A
사이클 종료
끝나면
배열 A와 새로운 크기 n을 반환
벡터를 사용해도 동일한 작업을 수행할 수 있습니다. 벡터는 C++ STL에 존재하는 동적 배열입니다. 벡터 사용을 고려한다면 요소를 삽입할 때 사용 가능한 공간에 대해 신경 쓸 필요가 없습니다. 벡터는 동적이기 때문에 필요할 때 자동으로 새 슬롯을 추가합니다. 알고리즘은 사용 가능한 슬롯 확인과 동일합니다.
배열 A와 B를 입력으로, A의 요소 수 n을 입력으로, B의 요소 m의 수를 입력으로 사용
B의 각 요소 e에 대해 do
배열 A
사이클 종료
배열 A와 새로운 크기 n을 반환
이전 방법은 수동 프로세스였습니다. 그러나 벡터 STL에서 insert() 함수를 사용하면 동일한 기능을 얻을 수 있습니다. insert() 함수는 위치 포인터(반복자 사용)와 반복자를 허용하고 한 컨테이너 개체의 요소를 복사한 후 위치 인덱스에서 다른 컨테이너 개체에 삽입합니다. 명확한 보기를 위해 C++ 구현을 살펴보겠습니다.
이 기사에서는 배열 요소를 다른 배열의 끝에 삽입하거나 푸시하는 몇 가지 다른 방법을 살펴보았습니다. 첫 번째 예에서는 간단한 C++ 배열을 사용하며 정적 배열에서 사용 가능한 공간에 특별한 주의를 기울여야 합니다. 다음 두 가지 방법에서는 필요할 때 자동으로 공간을 할당하는 동적 벡터를 사용하기 때문에 이에 대해 걱정할 필요가 없습니다.
위 내용은 배열을 다른 배열로 푸시하는 C++ 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!