fbpx
วิกิพีเดีย

กองซ้อน

สำหรับความหมายอื่น ดูที่ สแต็ก (แก้ความกำกวม)


กองซ้อน

ความสำคัญของลำดับ FILO (First In Last Out)
การซ้ำกันของสมาชิก อนุญาตให้ซ้ำกันได้
วิธีการเข้าถึง(access) PUSH/POP
เวลาที่ใช้ในการเข้าถึง O(1)
โครงสร้างข้อมูลที่มีรูปแบบนี้

กองซ้อน หรือ สแต็ก (อังกฤษ: Stack) หมายถึง แบบชนิดข้อมูลนามธรรมที่มีลักษณะการเรียงลำดับข้อมูล ในการเข้า-ออกในลักษณะเข้าก่อนออกทีหลัง FILO (First In Last Out) กล่าวคือข้อมูลที่เข้าใหม่ๆจะได้ออกก่อน คล้ายกองที่ทับถมซึ่งสิ่งที่เข้ามาใหม่จะอยู่ด้านบนๆ จึงเรียกว่า กองซ้อน (stack) กองซ้อนมีการดำเนินการพื้นฐานเพียง 3 อย่าง ได้แก่ push, pop และ top กองซ้อน โดยที่การ push คือการใส่ข้อมูลลงไปในกองซ้อน ซึ่งจะกระทำได้หากกองซ้อนยังว่างอยู่ หากไม่มีที่ว่างในกองซ้อนเหลืออยู่หรือกองซ้อนเต็ม กองซ้อนนั้นจะอยู่ในสภาวะล้นหรือมากเกินเก็บ (overflow) การ pop คือการนำข้อมูลออกจากส่วนบนสุดของกองซ้อน นอกจากนี้ การ pop จะเผยข้อมูลที่ถูกผิดอยู่ก่อนหน้า หรือทำให้กองซ้อนว่างได้ แต่ถ้ากองซ้อนนั้นว่างอยู่แล้ว การ pop จะทำให้อยู่ในสภาวะน้อยเกินเก็บ (underflow) (นั่นคือ ไม่มีข้อมูลให้นำออกแล้ว) การ top กองซ้อน จะดึงข้อมูลที่อยู่บนสุดและส่งค่านั้นให้ผู้ใช้โดยที่ไม่ได้ลบทิ้งไป การ top กองซ้อนอาจทำให้กองซ้อนอยู่ในสภาวะน้อยเกินเก็บได้เช่นกัน หากกองซ้อนว่างอยู่แล้ว

กองซ้อนจึงเป็นวิธีการจัดการเข้า-ออกของข้อมูลอีกแบบหนึ่ง เป็นโครงสร้างข้อมูลที่นำมาใช้ในการทำงานของโปรแกรมคอมพิวเตอร์หลายประการ อาทิการสร้าง subroutine การเรียงลำดับนิพจน์ ฯลฯ

จุดเด่นของกองซ้อน

กองซ้อนมีจุดเด่นในการจัดการการเข้า-ออกของข้อมูล ใช้เก็บข้อมูลที่ต้องการจัดเรียงเป็นระบบ โดยพิจารณาข้อมูลที่มาใหม่ๆก่อน จึงทำให้สะดวกต่อการจัดการข้อมูลซึ่งต้องการเรียงลำดับใหม่ หรือการย้อนกลับไปจากข้อมูลใหม่ไปข้อมูลเก่า เช่น subroutine,การเรียงลำดับนิพจน์

บริการที่มักจะมี

  • การเก็บเข้ากองซ้อน (Push)
  • การดึงข้อมูลบนสุดของกองซ้อน (Pop)
  • การดูข้อมูลบนสุดของกองซ้อน (Top)
  • ทำกองซ้อนให้ว่าง ตรวจสอบความว่างของกองซ้อน (Empty)

ความเร็วที่ใช้ในการทำงาน

การทำงานของกองซ้อนนั้นไม่ซับซ้อน เนื่องจากไม่ต้องมีการไล่พิจารณาสมาชิกทุกตัว เป็นเพียงแต่การพิจารณาข้อมูลบนสุดของกองซ้อน จึงทำให้ความเร็วในการทำงานของกองซ้อนเป็นค่าคงที่ (O(1))

วิธีการสร้างกองซ้อน

การสร้างกองซ้อนอาจใช้แถวลำดับประกอบกับจำนวนเต็ม ที่เก็บดัชนีของข้อมูลบนสุดของกองซ้อน (Stack Pointer หรือ Top of Stack)หรือใช้รายการโยงโดยการเก็บข้อมูลที่ใหม่ๆบนตัวแรกสุดของรายการ


การเก็บข้อมูลใหม่เข้าในกองซ้อนเรียกว่า PUSH ทำได้โดยการเพิ่มค่าดัชนีบนสุดของกองซ้อนไปหนึ่ง (increment)และเก็บข้อมูลใหม่ไว้ในดัชนีนั้น หรือเพิ่มเข้าไปที่ตัวแรกสุดของรายการโยง การนำข้อมูลตัวบนสุดของกองซ้อนออกเรียกว่า POP ทำได้โดยการคืนค่าข้อมูลที่เก็บไว้ในแถวลำดับ ดัชนีบนสุดและลดค่าดัชนีบนสุดลงมาอีกหนึ่ง(decrement) หรือเอาตัวแรกสุดของรายการโยงออก สำหรับ การหาตัวบนสุด(Top)นั้นก็ได้มาจากการคืนค่าข้อมูลในดัชนีบนสุดหรือข้อมูลตัวแรกสุดของรายการโยงนั้นเอง

ดูเพิ่ม

กองซ, อน, สำหร, บความหมายอ, สแต, แก, ความกำกวม, บทความน, ไม, การอ, างอ, งจากแหล, งท, มาใดกร, ณาช, วยปร, บปร, งบทความน, โดยเพ, มการอ, างอ, งแหล, งท, มาท, าเช, อถ, เน, อความท, ไม, แหล, งท, มาอาจถ, กค, ดค, านหร, อลบออก, เร, ยนร, าจะนำสารแม, แบบน, ออกได, อย, างไรแ. sahrbkhwamhmayxun duthi saetk aekkhwamkakwm bthkhwamniimmikarxangxingcakaehlngthimaidkrunachwyprbprungbthkhwamni odyephimkarxangxingaehlngthimathinaechuxthux enuxkhwamthiimmiaehlngthimaxacthukkhdkhanhruxlbxxk eriynruwacanasaraemaebbnixxkidxyangiraelaemuxir kxngsxnkhwamsakhykhxngladb FILO First In Last Out karsaknkhxngsmachik xnuyatihsaknidwithikarekhathung access PUSH POPewlathiichinkarekhathung O 1 okhrngsrangkhxmulthimirupaebbnikxngsxn hrux saetk xngkvs Stack hmaythung aebbchnidkhxmulnamthrrmthimilksnakareriyngladbkhxmul inkarekha xxkinlksnaekhakxnxxkthihlng FILO First In Last Out klawkhuxkhxmulthiekhaihmcaidxxkkxn khlaykxngthithbthmsungsingthiekhamaihmcaxyudanbn cungeriykwa kxngsxn stack kxngsxnmikardaeninkarphunthanephiyng 3 xyang idaek push pop aela top kxngsxn odythikar push khuxkariskhxmullngipinkxngsxn sungcakrathaidhakkxngsxnyngwangxyu hakimmithiwanginkxngsxnehluxxyuhruxkxngsxnetm kxngsxnnncaxyuinsphawalnhruxmakekinekb overflow kar pop khuxkarnakhxmulxxkcakswnbnsudkhxngkxngsxn nxkcakni kar pop caephykhxmulthithukphidxyukxnhna hruxthaihkxngsxnwangid aetthakxngsxnnnwangxyuaelw kar pop cathaihxyuinsphawanxyekinekb underflow nnkhux immikhxmulihnaxxkaelw kar top kxngsxn cadungkhxmulthixyubnsudaelasngkhannihphuichodythiimidlbthingip kar top kxngsxnxacthaihkxngsxnxyuinsphawanxyekinekbidechnkn hakkxngsxnwangxyuaelwkxngsxncungepnwithikarcdkarekha xxkkhxngkhxmulxikaebbhnung epnokhrngsrangkhxmulthinamaichinkarthangankhxngopraekrmkhxmphiwetxrhlayprakar xathikarsrang subroutine kareriyngladbniphcn l enuxha 1 cudednkhxngkxngsxn 2 brikarthimkcami 3 khwamerwthiichinkarthangan 4 withikarsrangkxngsxn 5 duephimcudednkhxngkxngsxn aekikhkxngsxnmicudedninkarcdkarkarekha xxkkhxngkhxmul ichekbkhxmulthitxngkarcderiyngepnrabb odyphicarnakhxmulthimaihmkxn cungthaihsadwktxkarcdkarkhxmulsungtxngkareriyngladbihm hruxkaryxnklbipcakkhxmulihmipkhxmuleka echn subroutine kareriyngladbniphcnbrikarthimkcami aekikhkarekbekhakxngsxn Push kardungkhxmulbnsudkhxngkxngsxn Pop kardukhxmulbnsudkhxngkxngsxn Top thakxngsxnihwang trwcsxbkhwamwangkhxngkxngsxn Empty khwamerwthiichinkarthangan aekikhkarthangankhxngkxngsxnnnimsbsxn enuxngcakimtxngmikarilphicarnasmachikthuktw epnephiyngaetkarphicarnakhxmulbnsudkhxngkxngsxn cungthaihkhwamerwinkarthangankhxngkxngsxnepnkhakhngthi O 1 withikarsrangkxngsxn aekikhkarsrangkxngsxnxacichaethwladbprakxbkbcanwnetm thiekbdchnikhxngkhxmulbnsudkhxngkxngsxn Stack Pointer hrux Top of Stack hruxichraykaroyngodykarekbkhxmulthiihmbntwaerksudkhxngraykarkarekbkhxmulihmekhainkxngsxneriykwa PUSH thaidodykarephimkhadchnibnsudkhxngkxngsxniphnung increment aelaekbkhxmulihmiwindchninn hruxephimekhaipthitwaerksudkhxngraykaroyng karnakhxmultwbnsudkhxngkxngsxnxxkeriykwa POP thaidodykarkhunkhakhxmulthiekbiwinaethwladb dchnibnsudaelaldkhadchnibnsudlngmaxikhnung decrement hruxexatwaerksudkhxngraykaroyngxxk sahrb karhatwbnsud Top nnkidmacakkarkhunkhakhxmulindchnibnsudhruxkhxmultwaerksudkhxngraykaroyngnnexngduephim aekikhaethwkhxy aethwkhxysxnghnaekhathungcak https th wikipedia org w index php title kxngsxn amp oldid 8151929, wikipedia, วิกิ หนังสือ, หนังสือ, ห้องสมุด,

บทความ

, อ่าน, ดาวน์โหลด, ฟรี, ดาวน์โหลดฟรี, mp3, วิดีโอ, mp4, 3gp, jpg, jpeg, gif, png, รูปภาพ, เพลง, เพลง, หนัง, หนังสือ, เกม, เกม