คอลเลคชั่น
|
|
ลิงก์ข้ามภาษาในบทความนี้ มีไว้เพื่อความสะดวกในการศึกษาเพิ่มเติมของผู้อ่านและผู้ร่วมแก้ไขบทความ เนื่องจากคำดังกล่าวยังไม่มีบทความในภาษาไทย ป้ายนี้จะถูกนำออกเมื่อมีเนื้อหาพอสมควรแล้ว |
| Collection | |
|---|---|
| ความสำคัญของลำดับ | ไม่เรียงลำดับความสำคัญ |
| การซ้ำกันของสมาชิก | อนุญาตให้ซ้ำกันได้ |
| วิธีการเข้าถึง(access) | ไล่ทุกสมาชิก |
| เวลาที่ใช้ในการเข้าถึง | O (n) โดยมากสุด |
| โครงสร้างข้อมูลที่มีรูปแบบนี้ | ทุกโครงสร้างข้อมูล |
Collection หรือ Container หมายถึง แบบชนิดข้อมูลนามธรรมหรือวิธีการเก็บข้อมูล ซึ่งไม่สนใจการเรียงลำดับความสำคัญ สามารถให้ข้อมูลซ้ำได้ กล่าวคือสิ่งที่เก็บข้อมูลได้ถือว่าเป็น Collection
นิยามของ Collection เช่นนี้ส่งผลให้การเก็บข้อมูลหรือโครงสร้างข้อมูล ทุกชนิดเป็น Collection ด้วย Collection จึงอาจใช้ในความหมายว่าเป็นที่เก็บข้อมูลหรือโครงสร้างข้อมูลได้เช่น Java Collections Framework
เนื้อหา |
จุดเด่นของ Collection [แก้]
Collection เป็นโครงสร้างข้อมูลพื้นฐานที่สุด อาจมีจุดเด่นสู้แบบชนิดข้อมูลนามธรรมหรือโครงสร้างข้อมูลอื่นๆที่ลงรายละเอียดไม่ได้ อาทิตารางแฮชก็เข้าถึงข้อมูลได้รวดเร็ว แถวคอยลำดับความสำคัญก็เข้าถึงข้อมูลตัวที่สำคัญที่สุดได้รวดเร็ว แต่ถึงอย่างไรก็ตามทุกโครงสร้างข้อมูลก็มีเงื่อนไข เช่น ตารางแฮชเก็บข้อมูลซ้ำกันไม่ได้ เป็นต้น เพราะฉะนั้น Collection มีจุดเด่นที่เห็นชัดเจนที่สุดคือ มีเงื่อนไขน้อยนั่นเอง
นอกจากนั้นแล้ว เนื่องจากการมีเงื่อนไขน้อย จึงทำให้ไม่ต้องจัดการข้อมูลมาก การเพิ่มข้อมูลจึงใช้เวลาคงที่ O (1)อีกด้วย จึงเหมาะสมกับเป็นที่เก็บข้อมูลที่เก็บมากๆ แต่ใช้น้อยๆ
บริการที่มักจะมี [แก้]
- การเพิ่ม-ลบข้อมูล/ชุดข้อมูล
- การค้นหาข้อมูล
- การหาความถี่ข้อมูล (frequency)
- การทำให้ว่าง
- การทำให้เป็นแถวลำดับ (to array)
ความเร็วที่ใช้ในการทำงาน [แก้]
หากกล่าวถึง Collection เฉพาะในความหมายว่าเก็บข้อมูลที่ซ้ำกันได้ และไม่เรียงลำดับความสำคัญ เนื่องจากการไม่มีเงื่อนไขของข้อมูล ส่งผลให้มีการเก็บข้อมูลหรือการเพิ่มสมาชิกรวดเร็ว เป็นเวลาคงที่ (O (1)) แต่การเข้าถึงจะช้า เพราะไม่มีการจัดการที่ดี ต้องไล่ทุกสมาชิก จึงทำให้เสียเวลาเป็นเชิงเส้นกับจำนวนข้อมูล (O (n))
การสร้าง Collection [แก้]
การสร้าง Collection อย่างง่ายอาจสร้างด้วยแถวลำดับ โดยเพิ่มสมาชิกตรงลำดับสุดท้าย ค้นหาสมาชิกโดยการใช้วงวน ไล่ทุกสมาชิกได้
ดูเพิ่ม [แก้]
|
||||||||||||||||||||