Egypt_Hieroglyphe4

Developer Team BorntoDev Coมันสมอง, Ltd. Love0 Share Tweet Data Structure มันถือเอาว่าอะไรกัน ?“Data Structure” ถอดความตรงตัวก็ถือเอาว่า “แบบสร้างหัวข้ออุจจาระ” นัยของคำพูดนี้ณปีกสมองกลก็ถือเอาว่ากรณีเกี่ยวกับกรรมวิธีบริหารกับข่าวสมองกลในที่แนวทางด้วยกันกรรมวิธีกระยาเลย พอให้สามารถใช้งานข้อมูลเหล่านั้นได้อย่างมีประสิทธิภาพเต็มที่ที่สุด เพราะว่าที่ตอนนี้ดิฉันจักมาแลดูกักคุมดุเราจักสามารถใช้ปัญญากรณี Data Structure จรใช้คืนก่อกระไรณด้านใดได้บ้าง เปลี่ยนแบบรูปแบบข่าวแปลนกระยาเลยStackด้วยว่า Stack นั้นจะได้ผลเก็บข้อมูลภาพร่างมีลำดับสูง-ต่ำ โดยประกอบด้วยไอเดียหลักสิงสู่แห่งการ “เข้าท่าขนอง ให้กำเนิดก่อน” หรือไม่ก็ Last In First Out” (LIFO) จ่ายอีฉันหวนนึกงานวางของซ้อนกักคุมขึ้นเรื่อยๆ ยุคแห่งดิฉันจะจับสรรพสิ่งออกก็ต้องหยิบจากข้างบนหรือก็รวมความว่าสิ่งสถานที่แปะเจียรขนองสุดๆเทียบเท่า ซีกอันแห่งหนแปะจากไปเป็นสิ่งจำเดิมจะสิงสู่ใต้สุดๆ จะเอาออกมาได้มาก็ในระหว่างที่หยิบอันอื่นคลอดจนจบเหลือหลอครอบครองอันสุดท้ายจากนั้นนั่นเองที่การจดรายการอีฉันสมรรถประยุกต์ใช้ Stack ได้ต่างๆนาๆสถานการณ์ เช่นใช้ที่การเก็บประวัติการกรอกข้อมูลสรรพสิ่งผู้ซื้อ ให้ผู้บริโภคสมรรถทำการ “Undo” กลับมาจรยังความประพฤติก่อนหน้าได้ ลองดูโค้ดแบบข้างล่าง# ก่อร่างสร้างตัวเปลี่ยนชื่อเสียงเรียงนาม stack ลงมาเก็บข้อมูลการใช้งาน stack = [] # สารภาพข้อมูลร่างกายแต่ต้นจากผู้ใช้ input_data = input(‘Enter Data: ‘) # วนลูปรับประกาศจรไม่รีบร้อนจนกว่าผู้ใช้พิมพ์ลงมาดุ end while input_data != ‘end’: # ถ้าหากผู้ซื้อสั่ง undo ก็ pop ผลจาก stack if input_data == ‘undo’: if len(stack) > 0: removed_data = stack.pop() print(‘Undo Action Remove:’, removed_data) else: print(‘Stack Empty’) # แม้ไม่ใช่คำบัญชา undo ก็เหยาะประกาศแห่งผู้บริโภคกรอกเข้าไปที่ stack แห่งหนก่อสร้างเก็บ else: stackมันสมองappend(input_data) print(‘Current Stack:’, stack) input_data = input(‘Enter Data: ‘) # ภายหลังได้มาคำสั่ง end ทำ print ค่าณ stack แห่งประกอบด้วยอยู่ออกมา print(‘Final Stack:’, stack)OutputEnter Data: 1 Current Stack: [‘1’] Enter Data: 5 Current Stack: [‘1’, ‘5’] Enter Data: 2 Current Stack: [‘1’, ‘5’, ‘2’] Enter Data: 3 Current Stack: [‘1’, ‘5’, ‘2’, ‘3’] Enter Data: 1 Current Stack: [‘1’, ‘5’, ‘2’, ‘3’, ‘1’] Enter Data: undo Undo Action Remove: 1 Current Stack: [‘1’, ‘5’, ‘2’, ‘3’] Enter Data: undo Undo Action Remove: 3 Current Stack: [‘1’, ‘5’, ‘2’] Enter Data: 4 Current Stack: [‘1’, ‘5’, ‘2’, ‘4’] Enter Data: end Final Stack: [‘1’, ‘5’, ‘2’, ‘4’] Queueตัวต่อลงมาที่จะอธิบายณตอนนี้ก็คือ “Queue” หรือว่าก็คือ “คิวบิก” สถานที่ดิฉันรู้จักกักคุมในที่การต่อคิวบิก เข้าแถว อย่างไรแปลนตรงนั้น ซึ่งคิวตรงนี้จะแตกต่างกับ Stack ซื่อแห่งคิวบิกจะเป็นการ “เข้าไปก่อนกำหนด ให้กำเนิดก่อน” หรือ “First In First Out” (FIFO) ก็ถือเอาว่าติดสอยห้อยตามคิวบิกนั่นแหละ มนุษย์เจียรดามคิวบิกก่อนก็จำเป็นต้องคว้าสิทธิ์ก่อนเป็นมั่นเป็นเหมาะสิงสู่จากนั้น เมื่ออีฉันถือสา Queue จากไปเขียนรหัส ก็จักสนับสนุนให้ดิฉันสามารถว่าการข่าวแห่งหนมุ่งหวังมอบมันเป็นไปตามหลั่นคว้าอย่างแม่นยำ ถ้าดุเราเขียนโปรแกรมสั่งการคิวบิกงานขึ้นกระเช้าสวรรค์ ซึ่งมนุษย์ภูมิหลังต่อคิวก่อนกำหนดก็จำเป็นต้องได้ขึ้นไปกระเช้าสวรรค์ก่อน ดิฉันจะสลักโปรแกรมได้มาภาพร่างรหัสปีกชะล้างตรงนี้import random # สร้างตัวเองแปลงชื่อ queue เก็บเก็บข้อมูลมนุชหลักแหล่งต่อคิวขึ้นไปชิงช้าสวรรค์ queue = [] # มนุษย์ที่จะมาเข้าแถว so_many_people = [‘Faye’, ‘Fang’, ‘Kaew’, ‘Golf’, ‘Mike’] # สุ่มคนลงมาเข้าคิวณแนวทีละคนจนครบถ้วนทั้งหมด enqueue_number = 1 for i in range(len(so_many_people)): someone = random.choice(so_many_people) print(‘Join a queue : ‘.format(enqueue_number, someone)) so_many_peopleมันสมองremove(someone) queueมันสมองappend(someone) enqueue_number += 1 # เรียกหามนุชมาขึ้นกระเช้าสวรรค์ตามคิว queue_number = 1 for i in range(len(queue)): print(‘Queue : ‘.format(queue_number, queueมันสมองpop(0))) queue_number += 1OutputJoin a queue 1: Mike Join a queue 1: Golf Join a queue 2: Faye Join a queue 3: Kaew Join a queue 4: Fang Join a queue 5: Mike Queue 1: Golf Queue 2: Faye Queue 3: Kaew Queue 4: Fang Queue 5: Mike Setอีกต้นสักร่างกายกับดักแนวทางข้อมูลสถานที่เป็นเงินเป็นทองมากๆพร้อมด้วยโน่นก็ถือเอาว่า Set เพราะเป็นสัณฐานข้อมูลคลังเก็บของเอาไว้ออกันทว่าจะมีมีลำดับสูง-ต่ำข้างในหมวด ไม่ว่าจะเก็บเนื้อเก็บตัวไหนเข้าก่อนหรือไม่ก็พระขนองก็ไม่มีผลอย่างไร กับอีกเอ็ดข้อเด่นสรรพสิ่ง Set ก็รวมความว่าจะเปล่าสมรรถเก็บข้อมูลแห่งย้ำกันเข้าคว้า คุณสมบัติกลุ่มนี้เอาใจช่วยตัดทอนกิจธุระ ลดโค้ดแห่งดิฉันต้องสลักยอมเจียรคว้าที่แหล่ๆกรณีตัวอย่างเช่นดิฉันมุ่งจารึกรหัสรับสารภาพข่าวแห่งหนไม่ย้ำกักคุมไม่มีเงินครบถ้วนจำนวน จากนั้นทำสุ่มตัวอย่างออกมาทีละเนื้อตัวจนจบ ถ้าหากดิฉันไม่ได้ใช้ Set ก็จำเป็นต้องจารึกโค้ดเช็คทุกหนดุข่าวสถานที่สารภาพเข้ามาใหม่นั้นซ้ำกับดักประกาศแห่งหนเจนรับสารภาพมาจากนั้นรึเปล่า ก่อนจะเลือกเฟ้นแหวจะใส่หรือเปล่าใส่พอกพูนเข้า และขณะที่จักสุ่มค่าออกมาก็คงจะจำเป็นจะต้อง import random ลงมาสนับสนุนสุ่มคุณประโยชน์ออกมาอีก แต่ถ้าหากอีฉันใช้ Set ตั้งแต่ต้นไม้ เหตุเหล่าตรงนี้ก็จะหวานคอแร้งเต็มที่ๆต้นฉบับรหัสข้างล่างตรงนี้พ้น# ก่อร่างสร้างตัวเปลี่ยนแบบ my_set ไว้เก็บข้อมูล my_set = set() # ขีดคั่นจำนวนรวมข้อมูลเปล่าย้ำจองที่มุ่ง limit_size = 5 # รับข้อมูลจนกว่าจักได้ตัวเปล่าซ้ำห้ามครบปริมาณ while len(my_set) != limit_size: my_set.add(input(‘Enter Number: ‘)) # ดังที่ Set พ้นไปลดหลั่น ประกาศแห่งเรียกใช้จึงได้ผลสุ่มตัวอย่างออกมา for num in my_set: print(num)Output คราวแห่งหน 1Enter Number: 1 Enter Number: 1 Enter Number: 5 Enter Number: 4 Enter Number: 6 Enter Number: 4 Enter Number: 3 6 4 3 1 5ถึงเรารันรหัสแต่เดิม ครบครันเหยาะ input ลำดับดังเดิม ผลแห่งคว้าก็จักจัดไม่เหมือนกัน ก็เพราะว่าตอนที่เก็บข้อมูลเหยาะในที่ Set ปราศจากงานระบุลดหลั่นOutput ครั้งสถานที่ 2Enter Number: 1 Enter Number: 1 Enter Number: 5 Enter Number: 4 Enter Number: 6 Enter Number: 4 Enter Number: 3 6 1 3 5 4 ด้วยว่า Data Structure แม้ดิฉันแจ้งเกี่ยวกับการใช้งานประกาศแนวทางปะปนกัน ยุคแห่งอีฉันได้เขียนโปรแกรมจริงแล้วเลือกเฟ้นประการข่าวลงมาใช้คืนอย่างเหมาะควร อีฉันก็จักกระทำคว้าคล่องขึ้นนั่นเองขอรับ