การเรียงลำดับแบบแพนเค้ก

การเรียงลำดับแบบแพนเค้ก (Pancake sorting) เป็นการเรียงลำดับสำหรับปัญหาทางคณิตศาสตร์ การเรียงแถวอย่างเป็นระเบียบของแพนเค้กในการสั่งซื้อโดยการเรียงตามขนาด โดยแผ่นที่ใหญ่สุดจะอยู่ข้างล่าง แผ่นเล็กสุดอยู่ข้างบน เมื่อไม้พายสามารถแทรกที่จุดใดๆในกองนั้นและใช้ในการพลิกแพนเค้กทั้งหมด จำนวนแพนเค้กจึงจำเป็นสำหรับการกำหนดจำนวนขั้นต่ำในการกล่าวถึงปัญหานี้ ผู้ที่กล่าวถึงรูปแบบการเรียงนี้เป็นคนแรก คือ  American geometer Jacob E. Goodman. ซึ่งแตกต่างจากขั้นตอนวิธีการเรียงลำดับแบบดั้งเดิม ดังนั้น การเรียงลำดับแบบแพนเค้ก จึงเป็นการเรียงลำดับตามการกลับรายการให้น้อยที่สุด ตัวแปรของปัญหา คือ แพนเค้กที่ถูกเผาไหม้ ซึ่งแต่ละแผ่นของแพนเค้กจะมีด้านที่ถูกเผาไหม้ และแพนเค้กทั้งหมดต้องวางทับกันโดยมีด้านที่เผาไหม้อยู่ด้านล่าง

 ปัญหาการเรียงแบบแพนเค้กในสตริง 
ลำดับที่มีการผกผันในการเปลี่ยนแปลงตำแหน่ง เช่น "สตริง" เป็นลำดับที่เป็นสัญลักษณ์ในการทำซ้ำได้ และในการทำซ้ำนี้ อาจจะลดจำนวนการพลิกตำแหน่งที่จำเป็นในการจัดเรียง Chitturi and Sudborough (2010) and Hurkens et al.(2007) แสดงให้เห็นว่า ความซับซ้อนของการเปลี่ยนสตริงที่เข้ากันได้กับอีกจำนวนหนึ่งที่มีจำนวนน้อยที่สุดของการผกผันตำแหน่ง คือ NP-complete     พวกเขายังให้ขอบเขตที่เหมือนกัน Hurkens et al  ให้ใช้อัลกอริทึมที่แน่นอนในการจัดเรียงไบนารีและการค้นหาแบบไตรภาค สตริง Chitturi (2011) ได้พิสูจน์ว่า ความซับซ้อนของการเปลี่ยนแปลงสตริงที่เข้ากันได้กับจำนวนที่น้อยที่สุดในการผกผันตำแหน่ง - ปัญหาแพนเค้กที่ถูกเผาไหม้บนสตริงเป็น NP-complete

 ขั้นตอนการแก้ปัญหาhttps://austingwalters.com/everyday-algorithms-pancake-sort/ 
1.ต้องเริ่มต้นสั่งแพนเค้กจากเล็กที่สุด (ด้านบน) ถึงใหญ่ที่สุด (ด้านล่าง) จึงจะสามารถจัดเรียงตามลำดับได้

2.สามารถทำการพลิกได้ทั้งกอง

3.เมื่อต้องการพลิกแพนเค้กที่ด้านล่างสุดของสแต็ค ต้องพลิกไปที่ด้านบนสุด (จากนั้นพลิกกลับไปที่ด้านล่าง)

4.หากต้องการสั่งซื้อแพนเค้กแต่ละแพนเค้กจะต้องพลิกขึ้นไปด้านบนและพลิกไปยังตำแหน่งสุดท้าย

 กราฟแพนเค้ก 
กราฟแพนเค้ก n คือกราฟที่มีจุดยอดของสัญลักษณของ n สัญลักษณ์ตั้งแต่ 1 ถึง n และขอบของมันจะได้รับระหว่างการแทนที่ด้วยคำนำหน้า เป็นกราฟปกติที่มี n! vertices ระดับของ n-1 ปัญหาการจัดเรียงแพนเค้กและปัญหาเพื่อให้ได้เส้นผ่านศูนย์กลางของแพนเค้กกราฟมีค่าเท่ากัน

กราฟแพนเค้กของมิติ n, Pn สามารถสร้างขึ้นได้จาก n สำเนาของ Pn-1 โดยการกำหนดองค์ประกอบที่แตกต่างจากชุด {1, 2, ... , n} เป็นส่วนต่อท้ายของแต่ละสำเนา

เส้นรอบวง : g(Pn) = 6, if n > 2.

เนื่องจากกราฟแพนเค้กมีคุณสมบัติที่น่าสนใจหลายอย่างเช่น โครงสร้างสมมาตรและการเรียกซ้ำขนาดเล็กและเส้นผ่าศูนย์กลางเมื่อเทียบกับขนาดของกราฟความสนใจเป็นจำนวนมากสำหรับโมเดลเครือข่ายการเชื่อมต่อแบบคู่ขนานสำหรับคอมพิวเตอร์แบบขนาน เมื่อเราพิจารณาแพนเค้กกราฟเป็นแบบจำลองของเครือข่ายการเชื่อมต่อเส้นผ่าศูนย์กลางของกราฟเป็นตัวชี้วัดที่แสดงถึงความล่าช้าในการสื่อสาร 

 ลำดับจำนวนเต็มที่เกี่ยวข้อง 
จำนวนสแต็คของความสูงที่ต้องการ n ที่ต้องการ flips k ที่ไม่เหมือนใคร
Height

nk012345678910111213141511211312214136113514123548206152079199281133271630149543135719031016358174225111914281105611501185204559185639122781066638015935851326977937958041019725753963228251064613778639193651309756814678732321111090809642943891252737117476641265159981073142504719123648956354612111110109998837793753339730647881414192949337252118420043169332213111050066130327041671311213214511455613009610305057046318403095551849922756397834751525125357218305656614586536481868748522001
ลำดับจาก The Online Encyclopedia of Integer Sequences of Neil Sloane:

OEIS A058986 - จำนวนพลิกสูงสุด

OEIS A067607 - จำนวนสแต็คที่ต้องการจำนวนพลิกสูงสุด (ด้านบน)

OEIS A078941 - จำนวน flips สูงสุดสำหรับ stack "burnt"

OEIS A078942 - จำนวน flips สำหรับเรียงลำดับ "burnt-side-on-top"

OEIS A092113 - รูปสามเหลี่ยมด้านบนอ่านตามแถว
หมวดหมู่:ขั้นตอนวิธีการจัดลำดับ

 อ้างอิง