C++STL 의 양 끝 대기 열 용기

개술
deque 블록 은 머리 와 꼬리 부분 에 삽입 하고 삭제 할 수 있 습 니 다.원 소 를 움 직 일 필요 가 없고 다른 원 소 를 움 직 일 필요 가 없습니다(push 사용back()방법 은 끝부분 에 요 소 를 삽입 하면 대기 열 을 확장 하고 push 를 사용 합 니 다.front()방법 은 첫 번 째 에 요 소 를 삽입 하고 insert()방법 을 사용 하여 중간 에 요 소 를 삽입 합 니 다.원래 위치 에 있 는 요 소 를 덮어 쓰 고 새로운 요 소 를 추가 하지 않 습 니 다)일반적으로 용기 요소 의 메모리 배분 전략 과 작업 성능 을 고려 할 때 deque 는 vector 에 해당 하 는 것 이 유리 합 니 다.

deque 대상 을 만 드 는 것 은 vector 와 유사 합 니 다.
요소 삽입
push 사용back()방법 은 끝부분 에 요 소 를 삽입 하면 대기 열 을 계속 확장 합 니 다.

#include<iostream>
#include<deque>
using namespace std;
int main()
{
    deque<int> d;
    d.push_back(1);
    d.push_back(2);
    cout<<d[0]<<" : "<<d[1]<<endl;
    return 0;
}
머리 에 요 소 를 삽입 하면 새로운 요 소 를 추가 하지 않 고 원래 있 던 요소 만 덮어 씁 니 다.

#include<iostream>
#include<deque>
using namespace std;
int main()
{
    deque<int> d;
    d.push_back(1);
    d.push_back(2);
    d.push_back(3);
    d.push_front(10);//d.insert(d.begin()+1, 10);
    d.push_front(20);//d.insert(d.begin()+2, 20);
    cout<<d[0]<<" "<<d[1]<<" "<<d[2]<<endl;
    return 0;
}
두루

#include<iostream>
#include<deque>
using namespace std;
int main()
{
    deque<int> d;
    d.push_back(1);
    d.push_back(2);
    d.push_back(3);
    for(int i = 0; i < d.size(); i ++)
        cout<<d[i]<<" ";
    cout<<endl;
    deque<int>::iterator it;
    for(it = d.begin(); it != d.end(); it ++)
        cout<<*it<<" ";
    cout<<endl;
    deque<int>::reverse_iterator rit;
    for(rit = d.rbegin(); rit != d.rend(); rit ++)
        cout<<*rit<<" ";
    cout<<endl;
    return 0;
}
요소 삭제
2 단 대기 열의 손,꼬리,중부 에서 요 소 를 삭제 하고 2 단 대기 열 용 기 를 비 울 수 있 습 니 다.

#include<iostream>
#include<deque>
using namespace std;
int main()
{
    deque<int> d;
    for(int i = 1; i < 6; i ++)
        d.push_back(i);
    d.pop_front();
    d.pop_front();
    deque<int>::iterator it;
    for(it = d.begin(); it != d.end(); it ++)
        cout<<*it<<" ";
    cout<<endl;
    d.pop_back();
    for(it = d.begin(); it != d.end(); it ++)
        cout<<*it<<" ";
    cout<<endl;
    d.erase(d.begin()+1);
    for(it = d.begin(); it != d.end(); it ++)
        cout<<*it<<" ";
    cout<<endl;
    d.clear();
    cout<<d.size()<<endl;
    return 0;
} 
이상 은 C++STL 의 양 끝 대기 열 용기 에 대한 상세 한 내용 입 니 다.C+STL 의 양 끝 대기 열 용기 에 대한 자 료 는 다른 관련 글 을 주목 하 십시오!

좋은 웹페이지 즐겨찾기