int main() { cout << "It runs!" << endl; //create a stack & show it works Stack<int> s; s.pop(); s.print(); cout<<"Empty? "<<s.empty()<<endl; cout<<s.size()<<endl; for(int i=0; i<10; i++) { s.push(2*i+1); s.print(); cout<<s.size()<<endl<<endl; } cout<<"Empty? "<<s.empty()<<endl; cout<<"The top is "<<(s.top())<<endl; for(int i=0; i<12; i++) { s.pop(); s.print(); } cout<<"The top is "<<(s.top())<<endl; //create a queue & show it works Queue<int> q; q.print(); cout<<"Empty? "<<q.empty()<<endl; cout<<q.size()<<endl; for(int i=0; i<10; i++) { q.push(2*i+1); q.print(); cout<<q.size()<<endl<<endl; } cout<<"Empty? "<<q.empty()<<endl; cout<<"The front is "<<(q.front())<<endl; cout<<"The rear is "<<(q.back())<<endl; for(int i=0; i<12; i++) { q.pop(); q.print(); } cout<<"The front is "<<(q.front())<<endl; cout<<"The rear is "<<(q.back())<<endl; Deque<int> d; d.print(); for(int i=0; i<10; i++) { d.push_back(i); d.print(); } for(int i=0; i<10; i++) { if(i%2==0) {cout<<"back"<<endl; d.pop_back();} else{cout<<"front"<<endl; d.pop_front();} d.print(); } }
int main() { Deque<int> *Pippo = new Deque<int>(); Pippo->addFirst(2)->addLast(7)->addFirst(0)->addLast(9)->addFirst(13); cout << "Elementi nel Deque: " << endl; Pippo->print(); cout << "Numero elementi: " << Pippo->getSize() << endl; Pippo->delFirst()->delLast(); cout << "Numero elementi: " << Pippo->getSize() << endl; Pippo->print(); delete Pippo; }
int main(){ Deque *d = new Deque(); d->push_front(1); d->push_back(2); d->push_back(3); d->push_front(0); d->pop_front(); d->pop_back(); d->print(); delete d; return 0; }
int main() { #if 0 CString cstr; cstr.init("abc"); cstr.print(); printf("\n"); Deque<CString> deque; deque.init(); deque.push_back(cstr); CString ps; ps = "102"; cstr.init("def"); deque.push_back(cstr); deque.print(); deque.back(0, ps); ps.print(); printf("\n"); #endif #if 1 setlocale(LC_ALL, ""); initscr(); keypad(stdscr,true); curs_set(0); // KEY_UP // KEY_DOWN //Deque<string> deque; Deque<CString> deque; deque.init(); move(0,0); int fail_time=1; while(1) { char str[128]; getstr(str); move(0,0); //std::string s(str); CString s; s.init(str); if (deque.push_back(s) == false) { mvprintw(20, 0, "push back fail ## %d", fail_time++); deque.pop_front(); deque.push_back(s); } deque.print(); int index=0; noecho(); //string ps; CString ps; while(1) { mvprintw(17, 0, "index: %d", index); refresh(); int ch = getch(); switch(ch) { case KEY_UP: { ++index; if (deque.back(index, ps) == true) { mvprintw(0, 15, "%s", ps.c_str()); } else --index; break; } case KEY_DOWN: { --index; if (deque.back(index, ps) == true) { mvprintw(0, 15, "%s", ps.c_str()); } else { //mvprintw(17, 5, "back fail"); ++index; } break; } case 'q': { goto end; } default: { ungetch(ch); move(0, 0); goto outer; break; } } mvprintw(17, 0, "index: %d", index); refresh(); } outer: echo(); } end: endwin(); #endif return 0; }