คิวแบบเส้นตรงเทียบกับคิวแบบวงกลม
เนื้อหา
- สารบัญ: ความแตกต่างระหว่างคิวแบบเส้นตรงและคิวแบบวงกลม
- แผนภูมิเปรียบเทียบ
- คิวแบบเส้นตรง
- คิวหนังสือเวียน
- ความแตกต่างที่สำคัญ
- ข้อสรุป
ความแตกต่างระหว่างคิวแบบเส้นตรงและคิวแบบวงกลมคือในข้อมูลคิวแบบเส้นตรงและคำสั่งจะถูกจัดเรียงตามลำดับแบบลำดับหลังแบบหนึ่งในขณะที่ข้อมูลแบบวงกลมแบบแถวและคำสั่งจะถูกจัดเรียงตามลำดับแบบวงกลมที่องค์ประกอบสุดท้ายเชื่อมต่อกับองค์ประกอบแรก
คิวเป็นโครงสร้างข้อมูลที่สำคัญที่สุดและหากคุณต้องการเขียนโปรแกรมคอมพิวเตอร์หลักคุณต้องเรียนรู้เกี่ยวกับคิวมีสองคิวที่เป็นคิวเชิงเส้นและคิวแบบวงกลม ในข้อมูลคิวแบบเส้นตรงและคำสั่งจะถูกจัดเรียงตามลำดับแบบเรียงลำดับตามลำดับในขณะที่ข้อมูลคิวแบบวงกลมและคำสั่งจะถูกจัดเรียงตามลำดับแบบวงกลมที่องค์ประกอบสุดท้ายเชื่อมต่อกับองค์ประกอบแรก คิวเป็นโครงสร้างข้อมูลเชิงเส้นที่ไม่ใช่แบบดั้งเดิมที่ใช้ก่อนในวิธีแรกออก
คิวแบบเส้นตรงตามวิธีเข้าก่อนออกก่อน คิวแบบเส้นตรงเป็นเหมือนเส้นตรงที่องค์ประกอบต่างๆเรียงกัน องค์ประกอบถูกเพิ่มจากด้านหนึ่งและลบออกจากอีกด้านหนึ่ง มีการดำเนินการหลายอย่างที่ดำเนินการกับคิวนั่นคือคิวจะเริ่มต้นเป็นศูนย์หรือว่างเปล่าจากนั้นเราตรวจสอบว่าคิวนั้นว่างเปล่าหรือไม่หลังจากนี้เราจะตรวจสอบคิวเต็มหรือไม่ การดำเนินการเข้าคิวจะถูกดำเนินการนั่นคือการแทรกขององค์ประกอบใหม่ในตอนท้ายของคิวและในที่สุดก็มีการเข้าคิวที่จะลบองค์ประกอบจากปลายด้านหน้า มีสองวิธีที่คิวสามารถนำไปใช้ซึ่งเป็นแบบสแตติกเมื่อเราพูดแบบสแตติกหมายถึงการใช้อาร์เรย์ อีกวิธีหนึ่งคือแบบไดนามิกโดยการพูดแบบไดนามิกหมายความว่าการใช้ตัวชี้
ในข้อมูลคิวแบบวงกลมและคำแนะนำจะถูกจัดเรียงตามลำดับแบบวงกลมที่องค์ประกอบสุดท้ายเชื่อมต่อกับองค์ประกอบแรก คิวแบบเส้นตรงมีข้อ จำกัด บางประการที่ไม่มีในคิวแบบวงกลม ในคิวแบบวงกลมองค์ประกอบใหม่จะถูกเพิ่มในตำแหน่งแรกของคิว ในคิวแบบเส้นตรงการแทรกจะดำเนินการโดยปลายด้านหนึ่งและด้านหน้าแบบฟอร์มการลบเท่านั้น หากคิวเต็มแสดงว่ามีสถานการณ์ที่ไม่สามารถเพิ่มองค์ประกอบใหม่ได้ ในคิวแบบวงกลมปลายทั้งสองจะเชื่อมต่อผ่านตัวชี้ซึ่งองค์ประกอบแรกมาหลังจากการแทรกขององค์ประกอบสุดท้าย เงื่อนไขโอเวอร์โฟลว์ที่สร้างขึ้นในคิวแบบเส้นตรงจะไม่ถูกสร้างขึ้นในคิวแบบวงกลม เงื่อนไขของคิวแบบวงกลมด้านหน้าจะต้องเป็นองค์ประกอบแรกควรมีเงื่อนไขที่ front = rear ในคิวแบบวงกลม เมื่อมีการเพิ่มองค์ประกอบใหม่เงื่อนไขจะกลายเป็น rear = rear +1 และองค์ประกอบจะถูกลบออกจากคิวดังนั้นเงื่อนไขจะกลายเป็น front = front +1
สารบัญ: ความแตกต่างระหว่างคิวแบบเส้นตรงและคิวแบบวงกลม
- แผนภูมิเปรียบเทียบ
- คิวแบบเส้นตรง
- คิวหนังสือเวียน
- ความแตกต่างที่สำคัญ
- ข้อสรุป
แผนภูมิเปรียบเทียบ
รากฐาน | คิวแบบเส้นตรง | คิววงกลม |
ความหมาย | ในข้อมูลคิวแบบเส้นตรงและคำแนะนำจะถูกจัดเรียงตามลำดับหลังจากนั้น | ในข้อมูลคิวแบบวงกลมและคำแนะนำจะถูกจัดเรียงตามลำดับแบบวงกลมที่องค์ประกอบสุดท้ายเชื่อมต่อกับองค์ประกอบแรก
|
ใบสั่ง | คิวแบบเส้นตรงตามลำดับก่อนในลำดับแรก | คิวแบบวงกลมไม่มีคำสั่งซื้อใด ๆ |
ตำแหน่งของการแทรกและการลบ | ในคิวแบบเส้นตรงการแทรกเกิดขึ้นจากปลายด้านหลังและการลบเกิดขึ้นจากด้านหน้า | ในการลบคิวแบบวงกลมและการแทรกสามารถเกิดขึ้นได้จากทุกด้าน |
อย่างมีประสิทธิภาพ | คิวแบบลิเนียร์ไม่มีประสิทธิภาพที่คิวแบบวงกลม | คิวแบบวงกลมมีประสิทธิภาพจากคิวแบบเส้นตรง |
คิวแบบเส้นตรง
คิวแบบเส้นตรงตามวิธีเข้าก่อนออกก่อน คิวแบบเส้นตรงเป็นเหมือนเส้นตรงที่องค์ประกอบต่างๆเรียงกัน องค์ประกอบถูกเพิ่มจากด้านหนึ่งและลบออกจากอีกด้านหนึ่ง มีการดำเนินการหลายอย่างที่ดำเนินการกับคิวนั่นคือคิวจะเริ่มต้นเป็นศูนย์หรือว่างเปล่าจากนั้นเราตรวจสอบว่าคิวนั้นว่างเปล่าหรือไม่หลังจากนี้เราจะตรวจสอบคิวเต็มหรือไม่ การดำเนินการเข้าคิวจะถูกดำเนินการนั่นคือการแทรกขององค์ประกอบใหม่ในตอนท้ายของคิวและในที่สุดก็มีการเข้าคิวที่จะลบองค์ประกอบจากปลายด้านหน้า มีสองวิธีที่คิวสามารถนำไปใช้ซึ่งเป็นแบบสแตติกเมื่อเราพูดแบบสแตติกหมายถึงการใช้อาร์เรย์ อีกวิธีหนึ่งคือแบบไดนามิกโดยการพูดแบบไดนามิกหมายความว่าการใช้ตัวชี้
คิวหนังสือเวียน
ในข้อมูลคิวแบบวงกลมและคำแนะนำจะถูกจัดเรียงตามลำดับแบบวงกลมที่องค์ประกอบสุดท้ายเชื่อมต่อกับองค์ประกอบแรก คิวแบบเส้นตรงมีข้อ จำกัด บางประการที่ไม่มีในคิวแบบวงกลม ในคิวแบบวงกลมองค์ประกอบใหม่จะถูกเพิ่มในตำแหน่งแรกของคิว ในคิวแบบเส้นตรงการแทรกจะดำเนินการโดยปลายด้านหนึ่งและด้านหน้าแบบฟอร์มการลบเท่านั้น หากคิวเต็มแสดงว่ามีสถานการณ์ที่ไม่สามารถเพิ่มองค์ประกอบใหม่ได้ ในคิวแบบวงกลมปลายทั้งสองจะเชื่อมต่อผ่านตัวชี้ซึ่งองค์ประกอบแรกมาหลังจากการแทรกขององค์ประกอบสุดท้าย เงื่อนไขโอเวอร์โฟลว์ที่สร้างขึ้นในคิวแบบเส้นตรงจะไม่ถูกสร้างขึ้นในคิวแบบวงกลม เงื่อนไขของคิวแบบวงกลมด้านหน้าจะต้องเป็นองค์ประกอบแรกควรมีเงื่อนไขที่ front = rear ในคิวแบบวงกลม เมื่อมีการเพิ่มองค์ประกอบใหม่เงื่อนไขจะกลายเป็น rear = rear +1 และองค์ประกอบจะถูกลบออกจากคิวดังนั้นเงื่อนไขจะกลายเป็น front = front +1
ความแตกต่างที่สำคัญ
- ในข้อมูลคิวแบบเส้นตรงและคำสั่งจะถูกจัดเรียงตามลำดับแบบเรียงลำดับตามลำดับส่วนข้อมูลคิวแบบวงกลมและคำสั่งจะถูกจัดเรียงตามลำดับแบบวงกลมที่องค์ประกอบสุดท้ายเชื่อมต่อกับลำดับแรก
- คิวแบบเส้นตรงตามลำดับก่อนเป็นอันดับแรกในขณะที่คิวแบบวงกลมไม่มีลำดับเฉพาะ
- ในคิวแบบเส้นตรงการแทรกเกิดขึ้นจากปลายด้านหลังและการลบเกิดขึ้นจากด้านหน้า ในขณะที่ในการลบคิวแบบวงกลมและการแทรกสามารถเกิดขึ้นได้จากทุกด้าน
- คิวแบบลิเนียร์ไม่มีประสิทธิภาพที่คิวแบบวงกลมในขณะที่คิวแบบวงกลมมีประสิทธิภาพจากคิวแบบเชิงเส้น
ข้อสรุป
ในบทความข้างต้นเราจะเห็นความแตกต่างที่ชัดเจนระหว่างคิวแบบเส้นตรงและแบบวงกลมกับการใช้งาน