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

ไลบรารี่ใน C ++ STL?


C++ STL (ไลบรารีเทมเพลตมาตรฐาน) เป็นชุดคลาสเทมเพลต C++ ที่มีประสิทธิภาพเพื่อจัดเตรียมคลาสและฟังก์ชันที่ใช้งานทั่วไปด้วยเทมเพลตที่ใช้อัลกอริทึมและโครงสร้างข้อมูลที่เป็นที่นิยมและใช้กันทั่วไป เช่น เวกเตอร์ รายการ คิว และสแต็ก

เป็นไลบรารีของคลาสคอนเทนเนอร์ อัลกอริธึม และการวนซ้ำ เป็นไลบรารีทั่วไป ดังนั้น คอมโพเนนต์ของมันถูกกำหนดพารามิเตอร์ ความรู้ในการทำงานของคลาสเทมเพลตเป็นข้อกำหนดเบื้องต้นสำหรับการทำงานกับ STL

เทมเพลตเป็นคุณลักษณะของภาษาการเขียนโปรแกรม C++ ที่อนุญาตให้ฟังก์ชันและคลาสทำงานกับประเภททั่วไปได้ ซึ่งช่วยให้ฟังก์ชันหรือคลาสทำงานกับข้อมูลประเภทต่างๆ ได้โดยไม่ต้องเขียนใหม่สำหรับแต่ละประเภท

ไลบรารีเทมเพลตมาตรฐาน C++ มีส่วนประกอบที่มีโครงสร้างดีสามอย่างต่อไปนี้ -

1 ตู้คอนเทนเนอร์

คอนเทนเนอร์ใช้เพื่อจัดการคอลเลกชันของวัตถุบางชนิด มีคอนเทนเนอร์หลายประเภท เช่น deque, list, vector, map เป็นต้น

  • คอนเทนเนอร์ลำดับ - คอนเทนเนอร์เหล่านี้ใช้โครงสร้างข้อมูลที่สามารถเข้าถึงได้ตามลำดับ

    • เวกเตอร์
    • รายการ
    • เดค
    • อาร์เรย์
    • forward_list
  • ตัวต่อคอนเทนเนอร์ - มีอินเทอร์เฟซที่แตกต่างกันสำหรับคอนเทนเนอร์ตามลำดับ

    • คิว
    • priority_queue
    • กอง
  • คอนเทนเนอร์เชื่อมโยง - ใช้โครงสร้างข้อมูลที่จัดเรียงซึ่งสามารถค้นหาได้อย่างรวดเร็ว (O(log n) ความซับซ้อน)

    • ชุด
    • มัลติเซ็ต
    • แผนที่
    • มัลติแมป
  • คอนเทนเนอร์เชื่อมโยงแบบไม่เรียงลำดับ - คอนเทนเนอร์เหล่านี้ใช้โครงสร้างข้อมูลที่ไม่เรียงลำดับซึ่งสามารถค้นหาได้อย่างรวดเร็ว

    • unordered_set
    • unordered_multiset
    • unordered_map
    • unordered_multimap

2 อัลกอริธึม

อัลกอริทึมดำเนินการกับคอนเทนเนอร์ สิ่งเหล่านี้ให้วิธีการที่คุณจะดำเนินการเริ่มต้น เรียงลำดับ ค้นหา และแปลงเนื้อหาของคอนเทนเนอร์

อัลกอริทึม

  • การเรียงลำดับ
  • กำลังค้นหา
  • อัลกอริธึม STL ที่สำคัญ
  • อัลกอริธึมอาร์เรย์ที่มีประโยชน์
  • การทำงานของพาร์ติชั่น

ตัววนซ้ำ 3 ตัว

ตัววนซ้ำใช้เพื่อก้าวผ่านองค์ประกอบของคอลเล็กชันของอ็อบเจ็กต์ คอลเลกชันเหล่านี้อาจเป็นคอนเทนเนอร์หรือชุดย่อยของคอนเทนเนอร์