Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

list::push_front() และ list::push_back() ใน C++ STL


ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน list::push_front() และ list::push_back() ใน C++ STL

รายการใน STL คืออะไร

List เป็นโครงสร้างข้อมูลที่ช่วยให้สามารถแทรกและลบเวลาคงที่ได้ทุกที่ตามลำดับ รายการจะถูกนำไปใช้เป็นรายการที่เชื่อมโยงแบบทวีคูณ รายการอนุญาตการจัดสรรหน่วยความจำที่ไม่ต่อเนื่องกัน List ทำการดึงการแทรกและการย้ายองค์ประกอบได้ดีกว่าในตำแหน่งใดๆ ในคอนเทนเนอร์ มากกว่าอาร์เรย์ เวกเตอร์ และ deque ใน List การเข้าถึงองค์ประกอบโดยตรงนั้นช้าและ list นั้นคล้ายกับ forward_list แต่ออบเจกต์ของรายการส่งต่อเป็นรายการที่เชื่อมโยงเพียงรายการเดียว และสามารถทำซ้ำได้เพียงส่งต่อเท่านั้น

รายการ::push_front() คืออะไร

list::push_front() เป็นฟังก์ชัน inbuilt ใน 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

รายการ::push_back() คืออะไร

list::push_back() เป็นฟังก์ชัน inbuilt ใน 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