지금 queue 하고 stack 이거 두개 사용법을 익히는 중인데요,
예를들어 test.txt. 라는 텍스트폴더에 1 2 3 4 5 라는 숫자를 집어넣고,
(현재 리눅스기반으로 공부중입니다. 컴파일할때 이렇게 하는걸로 배워서;;)
study.out test.txt 1 이라고 치면 2 3 4 5 1 - 처음 숫자를 맨 뒤로 이동
study.out test.txt 2 이라고 치면 3 4 5 1 2 - 처음 2개를 맨 뒤로 이동
study.out test.txt 3 이라고 치면 4 5 1 2 3- 처음 3개를 맨 뒤로 이동
이런식으로 만들려면 어떻게 해야하나요?
stack 을 queue 형식으로 하나씩 뺏다가 껴야할꺼같은데...
포인터도 사용해야할까요?
일단 stack 따로 queue 따로 하는법은 배웠습니다.
아예 거꾸로 돌리기라거나 pop, push 하는것정도는..
거꾸로 돌리는 스택은 이런식으로 만들었습니다.
int main()
{
ifstream in("mytest.txt",ios::in);
stack<int> intStack;
int number;
while (in >> number)
intStack.push(number);//
while (!intStack.empty())
{
cout << intStack.top() << " ";
intStack.push();
}
return 0;
}