C++ STL 中的 list::push_front() 和 list::push_back()


在本文中,我們將討論 C++ STL 中 list::push_front() 和 list::push_back() 函式的工作原理、語法和示例。

什麼是 STL 中的列表?

列表是一種資料結構,允許在序列中的任何位置進行恆定時間的插入和刪除操作。列表實現為雙向連結串列。列表允許非連續記憶體分配。與陣列、向量和雙端佇列相比,列表在容器中任何位置的元素插入、提取和移動方面效能更好。在列表中,直接訪問元素的速度較慢,列表類似於 forward_list,但 forward_list 物件是單向連結串列,只能向前迭代。

什麼是 list::push_front()?

list::push_front() 是 C++ STL 中一個內建函式,在標頭檔案中宣告。push_front() 用於將元素推入/插入到列表容器的前面,即開頭。透過在前面推送新元素,現有的第一個元素將成為第二個元素,插入的元素成為第一個元素,列表的大小也增加 1。

語法

list_container1.push_front (type_t& value);

引數

此函式接受一個引數,即我們要插入到列表開頭的值。

返回值

此函式不返回任何值。

示例

Input: list<int> List_container= {10, 11, 13, 15};
      List_container.push_front(9);
Output:
      List = 9 10 11 13 15

示例

 線上演示

#include <iostream>
#include <list>
using namespace std;
int main(){
   list<int> myList{};
   myList.push_front(10);
   myList.push_front(20);
   myList.push_front(30);
   myList.push_front(40);
   myList.push_front(50);
   myList.sort();
      cout<<"Elements in the list are : ";
   for (auto i = myList.begin(); i!= myList.end(); ++i)
      cout << ' ' << *i;
}

輸出

如果我們執行上述程式碼,它將生成以下輸出:

Elements in the list are : 10 20 30 40 50

什麼是 list::push_back()?

list::push_back() 是 C++ STL 中一個內建函式,在標頭檔案中宣告。push_back() 用於將元素推入/插入到列表容器的後面,即結尾。透過在結尾推送新元素,現有的最後一個元素將成為倒數第二個元素,插入的元素成為最後一個元素,列表的大小也增加 1。

語法

list_container1.push_front (type_t& value);

引數

此函式接受一個引數,即我們要插入到列表開頭的值。

返回值

此函式不返回任何值。

示例

Input: list<int> List_container= {10, 11, 13, 15};
      List_container.push_back(9);
Output:
      List = 10 11 13 15 9

示例

 線上演示

#include <iostream>
#include <list>
using namespace std;
int main(){
   list<int> myList{};
   myList.push_back(10);
   myList.push_back(20);
   myList.push_back(30);
   myList.push_back(40);
   myList.push_back(50);
   myList.sort();
      cout<<"Elements in the list are : ";
   for (auto i = myList.begin(); i!= myList.end(); ++i)
      cout << ' ' << *i;
}

示例

如果我們執行上述程式碼,它將生成以下輸出:

Elements in the list are :10 20 30 40 50

更新於:2020年3月6日

3K+ 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.