队列 是一种以先进先出(FIFO)方式运行的容器适配器。元素从后面(末端)插入,从前面删除。
null
队列::前端()
此函数用于引用队列容器的第一个或最早的元素。此函数可用于获取队列的第一个元素。 语法:
queuename.front()Parameters :No value is needed to pass as the parameter.Returns :Direct reference to the first element of the queue container.
例如:
Input : myqueue = 1, 2, 3 myqueue.front();Output : 1Input : myqueue = 3, 4, 1, 7, 3 myqueue.front();Output : 3
错误和异常
- 如果队列容器为空,则会导致未定义的行为
- 如果队列不是空的,它有无异常抛出保证
CPP
// CPP program to illustrate // Implementation of front() function #include <iostream> #include <queue> using namespace std; int main() { queue< int > myqueue; myqueue.push(3); myqueue.push(4); myqueue.push(1); myqueue.push(7); // Queue becomes 3, 4, 1, 7 cout << myqueue.front(); return 0; } |
输出:
3
队列::返回()
此函数用于引用队列容器的最后一个或最新元素。此函数可用于从队列后面获取第一个元素。 语法:
queuename.back()Parameters :No value is needed to pass as the parameter.Returns :Direct reference to the last element of the queue container.
例如:
Input : myqueue = 1, 2, 3 myqueue.back();Output : 3Input : myqueue = 3, 4, 1, 7, 3 myqueue.back();Output : 3
错误和异常
- 如果队列容器为空,则会导致未定义的行为
- 如果队列不是空的,它有无异常抛出保证
CPP
// CPP program to illustrate // Implementation of back() function #include <iostream> #include <queue> using namespace std; int main() { queue< int > myqueue; myqueue.push(3); myqueue.push(4); myqueue.push(1); myqueue.push(7); // Queue becomes 3, 4, 1, 7 cout << myqueue.back(); return 0; } |
输出:
7
申请: 给定一个整数的空队列,向队列中添加数字,然后打印第一个和最后一个元素之间的差。
Input : 1, 2, 3, 4, 5, 6, 7, 8Output : 7Explanation - Last element = 8, First element = 1, Difference = 7
算法 1.使用push()函数向队列中添加数字 2.比较第一个和最后一个元素。 3.如果第一个元素较大,则从中减去最后一个元素并打印。 4.否则从最后一个元素中减去第一个元素并打印出来。
CPP
// CPP program to illustrate // application Of front() and back() function #include <iostream> #include <queue> using namespace std; int main() { queue< int > myqueue; myqueue.push(8); myqueue.push(7); myqueue.push(6); myqueue.push(5); myqueue.push(4); myqueue.push(3); myqueue.push(2); myqueue.push(1); // Queue becomes 1, 2, 3, 4, 5, 6, 7, 8 if (myqueue.front() > myqueue.back()) { cout << myqueue.front() - myqueue.back(); } else if (myqueue.front() < myqueue.back()) { cout << myqueue.back() - myqueue.front(); } else cout << "0" ; } |
输出:
7
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END