ผลต่างระหว่างรุ่นของ "ไลบรารีแม่แบบมาตรฐานของภาษาซีพลัสพลัส/map"

ไม่มีคำอธิบายอย่างย่อ
(หน้าที่ถูกสร้างด้วย '{{ไลบรารีแม่แบบมาตรฐานของภาษาซีพลัสพลัส/แถบนำทา...')
 
'''map''' เป็น[[โครงสร้างข้อมูล]]แบบ [[:w:Associative array]] ข้อมูลหนึ่ง ๆ จะประกอบไปด้วยสองส่วนคือ ''คีย์'' และ ''ค่าข้อมูล'' ในการที่จะเข้าถึงค่าหนึ่ง ๆ สามารถกระทำได้ผ่านการระบุ key ดังนั้นจึงอาจมอง map เป็นแถวลำดับซึ่งไม่มีข้อจำกัดด้านพิสัยของดัชนีหรือชนิดข้อมูลของดัชนี
 
map ของไลบรารีแม่แบบมาตรฐานนี้อิมพลีเมนต์โดยใช้[[:w:ต้นไม้แดงดำ]] ซึ่งจากการที่เก็บข้อมูลบนต้นไม้ค้นหาแบบทวิภาคจึงทำให้มีคุณสมบัติต่าง ๆ เพิ่มขึ้นมาจาก [[:w:Associative array]] ปกติ เช่น คุณสมบัติในการหา[[:w:ขอบเขตบน]]หรือ[[:w:ขอบเขตล่าง]]ค่าที่มากกว่าสมาชิกดังกล่าว ผ่าน[[:w:การค้นหาแบบทวิภาค]]บนต้นไม้ อย่างไรก็ตาม เนื่องจากการเก็บข้อมูลบนต้นไม้แดงดำต้องอาศัยการเปรียบเทียบของคีย์จึงจำเป็นที่จะต้องระบุฟังก์ชัน/คลาสสในการเปรียบเทียบให้ด้วย (หากไม่ระบุจะใช้ [[../less/]] เป็นคลาสเปรียบเทียบโดยอัตโนมัติ)
 
== การใช้งานและประกาศตัวแปร ==
ก่อนอื่นให้ทำการ <code>#include <map></code>
 
สมมุติถ้าต้องการจะประกาศตัวแปร <code>var</code> โดยคีย์มีชนิดข้อมูลเป็น <code>datatypetype1</code> และค่าข้อมูลมีชนิดข้อมูลเป็น <code>datatypetype2</code> สามารถเขียนโค้ดได้ดังนี้: <code>map <datatype1,datatype2> var;</code>
 
== method ==
=== pushlower_bound ===
 
{{STLdata
| เป็นการเพิ่มข้อมูลชนิด <code>T</code>!-- ลงทางด้านปลายของคำอธิบาย stack--> ใช้เวลา <math>O(1\log n)</math>
| มีเพียงตัวเดียวคือข้อมูลชนิด T ที่ต้องการจะใส่ลง stack<code>type1</code>
| iterator ที่ชี้ไปยังโหนดที่มีบนต้นไม้แดงดำ
|
| voiditer pushlower_bound(Ttype1);
}}
 
=== upper_bound ===
{{โครงส่วน}}
 
=== erase ===
{{โครงส่วน}}
 
== operator ==
=== [] ===
{{โครงส่วน}}
=== ++ ===
{{โครงส่วน}}
=== -- ===
{{โครงส่วน}}
1,436

การแก้ไข