void show_deque(deque<char> d,string sz);
/* cout<<"deque:"<<endl;
deque<char> a(4,'a');
deque<char> b(3,'b');
show_deque(a,"a");
show_deque(b,"b");
a.swap(b);
show_deque(a,"a");
show_deque(b,"b");
a.assign(b.begin(),b.end());
show_deque(a,"a");
a.assign(10,'Q');
show_deque(a,"a");
a.clear();//removeall
show_deque(a,"a");
a.push_back('1');a.push_back('2');a.push_back('3');a.push_back('4');a.push_back('5');
a.push_front('0');
show_deque(a,"a");
a.erase(a.begin(),a.begin()+2);//removeat
show_deque(a,"a");
a.erase(a.end());
show_deque(a,"a");
cout<<"front:"<<a.front()<<endl;
a.front() = 'G'; //a.front() return a refrence data ,also a.back();
cout<<"front:"<<a.front()<<endl;
*(a.begin()+1) = 'B';
cout<<"a.begin+1:"<<*(a.begin()+1)<<endl;
show_deque(a,"a");
show_deque(b,"b");
a.insert(a.begin()+3,b.begin(),b.end());
show_deque(a,"a");
a.insert(a.begin(),5,'@');
show_deque(a,"a");
cout<<"a[6] and a.at(6):"<<a[6]<<" "<<a.at(6)<<endl;
cout<<"the last of a:"<<a[a.size()-1]<<endl;
a.pop_back();a.pop_back();a.pop_back();
show_deque(a,"a");
a.pop_front();
show_deque(a,"a");
cout<<"reverse a:";
deque<char>::reverse_iterator pit;
for(pit=a.rbegin(); pit!=a.rend(); pit++){
cout<<*pit<<" ";
}
cout<<endl;
show_deque(a,"a");*/
void show_vector(vector<string> vec,string sz);
/*
cout<<"distance:"<<endl;
vector<string> sz_arr;
vector<string>::iterator szit;
vector<string>::difference_type szdf;
sz_arr.push_back("A1");
sz_arr.push_back("B1");
sz_arr.push_back("C1");
sz_arr.push_back("D1");
sz_arr.push_back("E1");
show_vector(sz_arr,"sz_arr");
szdf = distance(sz_arr.begin()+1,sz_arr.end()-1);
cout<<"distance:"<<(long)szdf<<endl;
cout<<"size:"<<(unsigned int)sz_arr.size()<<endl;
cout<<"maxsize:"<<(unsigned int)sz_arr.max_size()<<endl;*/
void show_valarray(valarray<double> va, string sz);
/*cout<<"math:"<<endl;
const int arr_size = 5;
valarray<double> va(arr_size);
for(int i=0; i<(int)va.size(); i++){
va[i] = pow(2,i);
}
show_valarray(va,"va");
valarray<double> va1 = exp(va);
show_valarray(va1,"va1");
valarray<double> va2 = log(va);
show_valarray(va2,"va2");
valarray<double> va3 = log10(va);
show_valarray(va3,"va3");*/
/*cout<<"find:"<<endl;
vector<string> sz_vec;
sz_vec.push_back("a1");
sz_vec.push_back("b1");
sz_vec.push_back("c1");
sz_vec.push_back("d1");
//vector<string>::d
string sz1("c1");
vector<string>::iterator inIt = find(sz_vec.begin(),sz_vec.end(),sz1);
show_vector(sz_vec,"sz_vec");
//if(inIt != sz_vec.end()){
if(inIt != sz_vec.begin()+sz_vec.size()){
cout<<*inIt<<" is found"<<endl;
cout<<"the location is "<<inIt-sz_vec.begin()<<endl;
}else{
//cout<<*inIt<<" is not found"<<endl; error: unknow point
cout<<sz1<<" is not found"<<endl;
}*/
void show_deque(deque<char> d,string sz)
{
deque<char>::iterator pit;
cout<<sz.c_str()<<": ";
for(pit=d.begin();pit!=d.end();pit++){
cout<<*pit<<" ";
}
cout<<endl;
}
void show_vector(vector<string> vec,string sz)
{
vector<string>::iterator it;
cout<<sz.c_str()<<": ";
for(it=vec.begin(); it!=vec.end(); it++)
{
cout<<*it<<" ";
}
cout<<endl;
}
void show_valarray(valarray<double> va, string sz)
{
cout<<sz.c_str()<<": ";
for(int i=0; i<(int)va.size(); i++){
cout<<va[i]<<" ";
}
cout/*<<"/nsize:"<<(unsigned int)va.size()*/<<endl;
}