คำถามติดแท็ก algorithms

อัลกอริทึมเป็นลำดับขั้นตอนที่กำหนดไว้อย่างดีซึ่งกำหนดวิธีแก้ปัญหาแบบนามธรรมให้กับปัญหา ใช้แท็กนี้เมื่อปัญหาของคุณเกี่ยวข้องกับการออกแบบและวิเคราะห์อัลกอริทึม

1
อัลกอริทึมชนิดใดที่เร็วกว่าด้วยคอมพิวเตอร์ควอนตัม
ฉันเป็นนักเรียน CS เริ่มต้นและฉันกำลังเรียนรู้อัลกอริทึม ผมได้ยินมาว่าแม้จะมีคอมพิวเตอร์ควอนตัมที่ขั้นตอนวิธีการเรียงลำดับโดยทั่วไปไม่สามารถมีดีกว่าเวลา อย่างไรก็ตามฉันยังรู้ว่าอัลกอริทึมการแฟ็กเตอริงจะเร็วขึ้นมาก โดยทั่วไปแล้วอัลกอริธึมชนิดใดที่จะเร็วขึ้นอย่างมากสำหรับคอมพิวเตอร์ควอนตัมไม่มีบันทึกnnเข้าสู่ระบบ⁡nn\log n

4
มีอัลกอริธึมการบีบอัดใด ๆ ที่อิงกับ PI หรือไม่
สิ่งที่เรารู้ก็คือπนั้นไม่มีที่สิ้นสุดและมีแนวโน้มว่ามันจะมีสตริงจำนวน จำกัด ทุกตัวที่เป็นไปได้ ( ลำดับที่แยกออก ) ฉันได้เห็นต้นแบบของπfsซึ่งสมมติว่าทุกไฟล์ที่คุณสร้าง (หรือใคร ๆ ) หรือคุณจะสร้างมันมีอยู่แล้วดังนั้นมันจึงเป็นเรื่องของการแตกไฟล์ นอกจากนี้ยังมีpiFileซึ่งสามารถแปลงไฟล์ของคุณเป็น pi metadata มีสูตรประเภท BBPอยู่แล้ว(ซึ่งเป็นส่วนหนึ่งของการทดลองทางคณิตศาสตร์) ซึ่งช่วยให้เราสามารถคำนวณเลขฐานสองที่nของไพ ดังนั้นการจัดเก็บตำแหน่งเริ่มต้นและความยาวของข้อมูลเราสามารถแยกข้อมูลที่เราสนใจตามหลักวิชาได้ มีข้อโต้แย้งว่าข้อมูลเมตาของเรา(เช่นการชดเชยข้อมูลของเรา) อาจมีขนาดใหญ่กว่าข้อมูลที่แยกออกมา สัญลักษณ์เมทริกซ์และπสามารถเข้ารหัสในฐาน 256 เพื่อให้มีประสิทธิภาพมากขึ้น (ดูเรื่องตลก ) จากคำถามข้างต้นคำถามหลักของฉันคือ: มีอัลกอริธึมการบีบอัดใด ๆ ที่อิงกับ PI หรือไม่ ถ้าไม่มันทำให้รู้สึก? หรือมีงานวิจัยในบริเวณนั้นบ้าง? หรือบางทีπไม่ใช่สิ่งที่ถูกต้องดังนั้นค่าคงที่ของออยเลอร์หรือTau (τ) ล่ะ? มันจะสร้างความแตกต่างหรือไม่? เครดิตภาพ: ไดโนเสาร์การ์ตูน ดูสิ่งนี้ด้วย: สตริงบิต จำกัด ใด ๆ สามารถพบได้ใน pi ภายในระยะเวลาที่เหมาะสมหรือไม่? ที่ดังนั้น จะไม่จัดเก็บดัชนีไว้ในπจะใหญ่ (หรือใหญ่กว่า) …

2
ปัญหามอร์ฟิซึมกราฟสำหรับกราฟที่มีป้ายกำกับ
ในกรณีของกราฟที่ไม่มีป้ายกำกับปัญหากราฟ isomorphism สามารถแก้ไขได้ด้วยอัลกอริธึมจำนวนมากซึ่งทำงานได้ดีในทางปฏิบัติ นั่นคือแม้ว่าเวลาในการรันกรณีที่เลวร้ายที่สุดคือเอ็กซ์โพเนนเชียล แต่ก็มักจะมีเวลาที่ใช้พหุนาม ฉันหวังว่าสถานการณ์จะคล้ายกันในกรณีของกราฟที่มีป้ายกำกับ อย่างไรก็ตามฉันมีเวลายากมากที่จะค้นหาการอ้างอิงใด ๆ ที่เสนออัลกอริทึม "มีประสิทธิภาพจริง" หมายเหตุ: ที่นี่เราต้องการให้ isomorphism รักษาฉลาก นั่นคือ isomorphism ระหว่างสองข้อ จำกัด พีชคณิตออโตมาตากระบวนการ / กระบวนการจะหมายความว่าออโตมาตะ / ข้อตกลงเป็นหลัก "เท่ากับการเปลี่ยนชื่อของโหนด" การอ้างอิงเดียวที่ฉันพบคือหนึ่งในวิกิพีเดียที่ระบุว่าปัญหามอร์ฟิซึ่มของกราฟที่มีป้ายกำกับนั้นสามารถลดลงในเชิงพหุนามของกราฟทั่วไปได้ อย่างไรก็ตามกระดาษอ้างอิงมีความเกี่ยวกับทฤษฎีความซับซ้อนมากกว่าขั้นตอนวิธีปฏิบัติ ฉันขาดอะไรบางอย่างหรือเป็นกรณีที่ไม่มีอัลกอริทึม "ฮิวริสติก" ที่มีประสิทธิภาพในการตัดสินใจว่ากราฟที่มีป้ายกำกับสองรายการนั้นมีลักษณะผิดปกติหรือไม่? คำใบ้หรือการอ้างอิงใด ๆ จะดีมาก

3
ทำความเข้าใจเกี่ยวกับอัลกอริทึมสำหรับปัญหาปั้มน้ำมัน
ในปัญหาปั้มน้ำมันเราได้รับเมืองnnnเมือง{0,…,n−1}{0,…,n−1}\{ 0, \ldots, n-1 \}และถนนระหว่างทั้งสอง ถนนแต่ละสายมีความยาวและแต่ละเมืองกำหนดราคาน้ำมัน ถนนหนึ่งหน่วยมีราคาน้ำมันหนึ่งหน่วย เป้าหมายของเราคือไปจากแหล่งต้นทางไปยังปลายทางด้วยวิธีที่ถูกที่สุด รถถังของเราถูก จำกัด ด้วยค่าบางอย่าง ฉันพยายามเข้าใจอัลกอริธึมดังนั้นฉันจึงจดขั้นตอนเพื่อคำนวณวิธีแก้ปัญหาด้วยตนเอง น่าเสียดายที่ฉันติดอยู่ - ในบางจุดไม่มีขอบที่ต้องพิจารณาฉันไม่รู้ว่าทำไม ตัวอย่าง: ถนน: 0 ----------- 1 ------------ 2 -------------- 3 (ไม่ได้ ต้องง่ายขนาดนั้นมันอาจเป็นกราฟใดก็ได้เช่นอาจมีถนนระหว่าง 0-> 2, 0-> 3, 1-> 3 เป็นต้น) ที่มา: 0, ปลายทาง: 3, รถถัง: 10 หน่วย ราคาน้ำมัน: 0 : 10 หน่วย, 1 : 10 หน่วย, 2 …

1
อัลกอริทึมแบบขนานสำหรับการค้นหาสูงสุดใน
เรานำเสนอในชั้นเรียนพร้อมอัลกอริทึมสำหรับการค้นหาสูงสุดในอาเรย์แบบขนานในความซับซ้อนของเวลากับคอมพิวเตอร์n 2O(1)O(1)O(1)n2n2n^2 อัลกอริทึมคือ: รับอาร์เรย์ A ของความยาว n: สร้างอาร์เรย์แฟล็ก B ที่มีความยาว n และกำหนดค่าเริ่มต้นด้วยเลขศูนย์ด้วยคอมพิวเตอร์nnn เปรียบเทียบทุกองค์ประกอบ 2 และเขียน 1 ใน B ที่ดัชนีขั้นต่ำกับคอมพิวเตอร์n2n2n^2 ค้นหาดัชนีด้วย 0 ใน A ด้วยคอมพิวเตอร์nnn อาจารย์บรรยายให้พวกเราเห็นว่าทำได้ด้วยคอมพิวเตอร์และมีการบันทึกnซับซ้อนเวลาnlognnlog⁡n\frac{n}{\log n}lognlog⁡n\log n หลังจากคิดมากฉันไม่สามารถหาวิธีทำได้ ความคิดใด ๆ

1
ความซับซ้อนในการค้นหาเมทริกซ์ pseudoinverse
จำเป็นต้องใช้การคำนวณทางคณิตศาสตร์จำนวนเท่าใดเพื่อค้นหาเมทริกซ์ pseudoinverseของMoore – Penroseในฟิลด์ใด ๆ ถ้าเมทริกซ์กลับด้านและมีค่าซับซ้อนแสดงว่ามันเป็นแค่อินเวอร์ส การค้นหาอินเวอร์สนั้นใช้เวลาO(nω)O(nω)O(n^\omega)โดยที่ωω\omegaคือค่าคงที่การคูณเมทริกซ์ มันเป็นทฤษฎีบท 28.2 ในบทนำสู่อัลกอริทึมรุ่นที่ 3 หากเมทริกซ์มีแถว linearly อิสระหรือคอลัมน์และซับซ้อนมูลค่าแล้วเมทริกซ์ pseudoinverse สามารถคำนวณกับ* ( * ) - 1หรือ( * ) - 1 *ตามลำดับที่*เป็น transpose คอนจูเกต ของ โดยเฉพาะอย่างยิ่งนี้หมายถึงO ( n ω )เวลาสำหรับการค้นหา pseudoinverse ของAAAA∗( A A* * * *)- 1A* * * *(AA* * * *)-1A^*(A A^*)^{-1}( A …

1
เราสามารถตัดสินใจได้อย่างรวดเร็วว่า DFA ที่ให้มามีน้อยที่สุดหรือไม่
การ จำกัด ขอบเขตของออโตมาตา (DFAs) ที่ลดลงอย่างน้อยเป็นปัญหาที่ได้รับการศึกษาอย่างละเอียดในวรรณคดีและมีการเสนออัลกอริทึมหลายอย่างเพื่อแก้ปัญหาดังต่อไปนี้: ให้ DFA , คำนวณ DFA ที่สอดคล้องกัน{A} อัลกอริทึมส่วนใหญ่ทำงานในเวลาพหุนามAAA\mathscr{A}AA\mathscr{A} อย่างไรก็ตามฉันสงสัยว่าตัวแปรการตัดสินใจของปัญหานี้ - "ให้ DFA ,น้อยที่สุดหรือไม่" - สามารถแก้ไขได้อย่างมีประสิทธิภาพมากกว่าการคำนวณออโตเมติกน้อยที่สุด เห็นได้ชัดว่าสิ่งนี้สามารถทำได้อย่างมีประสิทธิภาพโดยการรันอัลกอริธึมการปรับแต่งพาร์ติชันของ Hopcroftแล้วตัดสินใจว่าทุกพาร์ติชันมีสถานะเดียวอย่างแม่นยำหรือไม่AAA\mathscr{A}AA\mathscr{A} ดังที่ Yuval Filmus แนะนำไว้ในคำตอบของเขาตัวแปร decidability สามารถแก้ไขได้เร็วขึ้นโดยใช้อัลกอริธึมมาตรฐาน น่าเสียดายที่ฉันไม่สามารถเห็นได้ว่า (ฉันหวังว่าฉันจะไม่พลาดจุดที่ชัดเจนที่นี่) Yuval ชี้ให้เห็นในความคิดเห็นที่นี่ว่าอัลกอริธึมที่รู้จักกันดีที่สุด (อย่างที่กล่าวข้างต้น) ทำงานในเวลาสำหรับตัวอักษรขนาดคงที่ ดังนั้นฉันจึงไม่เพียง แต่สนใจกำไรที่ได้รับอย่างมีนัยสำคัญทาง asymptotically ในขณะที่สิ่งเหล่านี้ดูเหมือนไม่น่าเป็นไปได้ สิ่งที่รบกวนจิตใจฉันมากที่สุดคือฉันไม่สามารถจินตนาการ "ทางลัด" ใด ๆ ที่อาจมาจากความจริงที่ว่าเราสนใจเพียงคำตอบใช่ไม่ใช่คำตอบ - ไม่ใช่แม้กระทั่งทางลัดที่ช่วยให้ประหยัดเวลาเล็กน้อยแบบไม่แสดงอาการ ฉันรู้สึกว่าอัลกอริธึมที่สมเหตุสมผลทุกอย่างที่ตัดสินใจลดจำนวนขั้นต่ำของ DFA นั้นจะต้องลดความเป็นจริงของ DFA ลงและดูว่ามีอะไรเปลี่ยนแปลงในระหว่างกระบวนการหรือไม่O(nlogn )O(nlog⁡n)\mathcal{O}(n …

3
อัลกอริทึมเพื่อจับคู่ตัวเลขที่มีจำนวนการเคลื่อนไหวน้อย
นี่เป็นคำถามเกี่ยวกับการแก้ไขระยะทางและเป็นเรื่องง่ายมาก ฉันแค่สมองค่อนข้างตายในเรื่องนี้และไม่สามารถคิดออก รับชุดตัวเลขเช่น [3, 1, 1, 1] คนเราจะเปลี่ยนตัวเลขทั้งหมดให้เป็นตัวเลขเดียวกันได้อย่างมีประสิทธิภาพมากที่สุดอย่างไรด้วยจำนวน "การเคลื่อนไหว" ขั้นต่ำ โดย "ย้าย" หมายถึงการเพิ่มหรือลบออกจากตัวเลข ในตัวอย่างข้างต้นการเคลื่อนไหวที่มีประสิทธิภาพมากที่สุดคือ: [1, 1, 1, 1] สิ่งนี้จะต้องมี 2 การเคลื่อนไหวลดจำนวนแรกสองครั้ง ฉันไม่สามารถหาวิธีที่ดีที่สุดในการค้นหาสิ่งนี้ได้เนื่องจากมีอาร์เรย์ที่ใหญ่กว่าของตัวเลขนับร้อย ตอนแรกฉันพยายามคำนวณจำนวนเฉลี่ยที่ถูกปัดเศษ (ผลรวมของหารด้วยความยาวทั้งหมด) จากนั้นลดลงเป็นค่าเฉลี่ยที่คำนวณ แต่ตัวอย่างข้างบนแตกนี้ต้องใช้การเคลื่อนที่ 4 ครั้งแทน 2 ฉันคิดว่าฉันสามารถคิด: เฉลี่ย, โหมด ค่ามัธยฐาน และรับระยะทางแก้ไขของแต่ละคนเลือกระยะทางขั้นต่ำ อย่างไรก็ตามฉันไม่แน่ใจว่าสิ่งนี้จะถูกต้องในทุก ๆ ครั้งเดียว ฉันจะรู้ได้อย่างไร

1
โครงสร้างข้อมูลสำหรับแผนที่เป็นระยะ
ให้เป็นจำนวนเต็มและให้แทนเซตของจำนวนเต็มทั้งหมด ลองแสดงว่าช่วงเวลาของจำนวนเต็ม\}nnnZZ\mathbb{Z}[a,b][a,b][a,b]{a,a+1,a+2,…,b}{a,a+1,a+2,…,b}\{a,a+1,a+2,\dots,b\} ฉันกำลังมองหาโครงสร้างข้อมูลที่จะเป็นตัวแทนของแผนที่{Z} ฉันต้องการโครงสร้างข้อมูลเพื่อสนับสนุนการดำเนินการต่อไปนี้:f:[1,n]→Zf:[1,n]→Zf:[1,n] \to \mathbb{Z} get(i)get(i)\text{get}(i)ควรกลับ(i)f(i)f(i)f(i) set([a,b],y)set([a,b],y)\text{set}([a,b],y)ควรปรับปรุงเพื่อให้คือการปรับปรุงไปแผนที่ใหม่ดังกล่าวว่าสำหรับและสำหรับb]ffff(a)=f(a+1)=⋯=f(b)=yf(a)=f(a+1)=⋯=f(b)=yf(a)=f(a+1)=\cdots=f(b)=yffff′f′f'f′(i)=yf′(i)=yf'(i) = yi∈[a,b]i∈[a,b]i \in [a,b]f′(i)=f(i)f′(i)=f(i)f'(i) = f(i)i∉[a,b]i∉[a,b]i \notin [a,b] stab(i)stab(i)\text{stab}(i)ควรกลับช่วงเวลาที่ใหญ่ที่สุดเช่นนั้นและเป็นค่าคงที่ใน (เช่น )[a,b][a,b][a,b]i∈[a,b]i∈[a,b]i \in [a,b]fff[a,b][a,b][a,b]f(a)=f(a+1)=⋯=f(b)f(a)=f(a+1)=⋯=f(b)f(a)=f(a+1)=\cdots=f(b) add([a,b],δ)add([a,b],δ)\text{add}([a,b],\delta)ควรอัปเดตเป็นแผนที่ใหม่เช่นนั้นสำหรับและffff′f′f'f′(i)=f(i)+δf′(i)=f(i)+δf'(i) = f(i) + \deltai∈[a,b]i∈[a,b]i \in [a,b]f′(i)=f(i)f′(i)=f(i)f'(i) = f(i)สำหรับi∉[a,b]i∉[a,b]i \notin [a,b] ] ฉันต้องการให้การดำเนินการแต่ละอย่างมีประสิทธิภาพ ฉันจะนับเวลาหรืออย่างมีประสิทธิภาพ แต่เวลาช้าเกินไป มันก็โอเคถ้าเวลาการทำงานถูกตัดจำหน่ายเวลาการทำงาน มีโครงสร้างข้อมูลที่ทำให้การดำเนินการทั้งหมดเหล่านี้ไปพร้อม ๆO(1)O(1)O(1)O(lgn)O(lg⁡n)O(\lg n)O(n)O(n)O(n) (ฉันสังเกตเห็นรูปแบบที่คล้ายกันเกิดขึ้นในการท้าทายการเขียนโปรแกรมหลายอย่างนี่เป็นลักษณะทั่วไปที่เพียงพอสำหรับปัญหาการท้าทายเหล่านั้นทั้งหมด)

1
ความแตกต่างของปัญหาเป้สะพายหลัง
คุณจะเข้าหาปัญหาเป้ในสถานการณ์การเขียนโปรแกรมแบบไดนามิกได้อย่างไรถ้าตอนนี้คุณต้อง จำกัด จำนวนของสินค้าในเป้หลังด้วยค่าคงที่ ? นี่เป็นปัญหาเดียวกัน (น้ำหนักสูงสุดของทุกรายการมีค่าและน้ำหนัก ) แต่คุณสามารถเพิ่มเฉพาะรายการไปยังเป้และเห็นได้ชัดว่าจำเป็นต้องปรับค่าของเป้ให้เหมาะสมpppWWWvvvwwwppp เราจำเป็นต้องมีมิติที่ 3 หรือเราสามารถหาวิธีอื่นได้โดยไม่ต้องใช้มัน ฉันพยายามที่จะเพิ่มจำนวนรายการในเป้ในเซลล์และรับค่าสูงสุดในตอนท้ายด้วยจำนวนรายการ <=แต่มันไม่ใช่ทางออกที่ดีที่สุดppp

1
อัลกอริทึมในการทดสอบว่าภาษาปกติหรือไม่
มีอัลกอริทึม / ขั้นตอนการทดสอบอย่างเป็นระบบว่าภาษานั้นปกติหรือไม่? กล่าวอีกนัยหนึ่งระบุภาษาที่ระบุในรูปแบบพีชคณิต (คิดว่าบางอย่างเช่น ) ทดสอบว่าภาษาเป็นปกติหรือไม่ ลองนึกภาพเรากำลังเขียนบริการเว็บเพื่อช่วยนักเรียนทำการบ้านทั้งหมด ผู้ใช้ระบุภาษาและบริการบนเว็บตอบกลับด้วย "ปกติ", "ไม่ปกติ" หรือ "ฉันไม่รู้" (เราต้องการให้บริการเว็บตอบ "ฉันไม่รู้" ไม่บ่อยเท่าที่จะเป็นไปได้) มีวิธีใดที่ดีในการทำสิ่งนี้โดยอัตโนมัติหรือไม่? สิ่งนี้สามารถแก้ไขได้หรือไม่? เป็นเรื่องที่ตัดสินใจได้หรือไม่ (คือสามารถรับประกันได้ว่าเราไม่จำเป็นต้องตอบว่า "ไม่รู้" หรือไม่? มีอัลกอริทึมที่มีประสิทธิภาพพอสมควรสำหรับการแก้ปัญหานี้หรือไม่และสามารถให้คำตอบอื่นที่ไม่ใช่ "ไม่รู้"L = { anขn: n ∈ N }L={anขn:n∈ยังไม่มีข้อความ}L=\{a^n b^n : n \in \mathbb{N}\} วิธีคลาสสิกสำหรับการพิสูจน์ว่าภาษาไม่ปกติคือการแทรกบทแทรก อย่างไรก็ตามดูเหมือนว่าต้องมีความเข้าใจคู่มือในบางจุด (เช่นเพื่อเลือกคำที่จะปั๊ม) ดังนั้นฉันไม่ชัดเจนว่าจะกลายเป็นสิ่งที่เป็นอัลกอริทึม วิธีคลาสสิกสำหรับการพิสูจน์ว่าภาษาเป็นเรื่องปกติที่จะใช้ทฤษฎีบท Myhill – Nerode เพื่อให้ได้มาซึ่งสถานะออโตเมติกอัน จำกัด นี่เป็นวิธีที่มีแนวโน้ม แต่จะต้องใช้ความสามารถในการดำเนินการขั้นพื้นฐานกับภาษาในรูปแบบพีชคณิต ไม่ชัดเจนสำหรับฉันว่ามีวิธีที่เป็นระบบในการดำเนินการเชิงสัญลักษณ์ที่จำเป็นสำหรับภาษาในรูปแบบพีชคณิต เพื่อให้คำถามนี้ถูกต้องเราจำเป็นต้องตัดสินใจว่าผู้ใช้จะระบุภาษาอย่างไร …

2
เปรียบเทียบระหว่างอัลกอริทึม Aho-Corasick และอัลกอริทึม Rabin-Karp
ฉันกำลังทำงานกับอัลกอริธึมการค้นหาสตริงที่สนับสนุนการค้นหาหลายรูปแบบ ผมพบว่าทั้งสองขั้นตอนวิธีการที่ดูเหมือนผู้สมัครที่แข็งแกร่งที่สุดในแง่ของเวลาการทำงานคือAho-Corasickและราบิน-คาร์พ อย่างไรก็ตามฉันไม่พบการเปรียบเทียบแบบครอบคลุมระหว่างอัลกอริธึมทั้งสอง อัลกอริทึมใดที่มีประสิทธิภาพมากกว่า นอกจากนี้อันไหนที่เหมาะกว่าสำหรับการคำนวณแบบขนานและการค้นหาหลายรูปแบบ? ในที่สุดใครจะใช้ทรัพยากรฮาร์ดแวร์น้อย? สำหรับอัลกอริทึม AC ระยะการค้นหาใช้เวลาในขณะที่เป็น RK อย่างไรก็ตามเวลาทำงานสำหรับ RK คือซึ่งทำให้คล้ายกับ AC ข้อสรุปเบื้องต้นของฉันคือ RK ดูดีกว่าเพราะไม่ต้องการหน่วยความจำมากเท่ากับ AC ถูกต้องหรือไม่O(n+m)O(n+m)O(n+m)O(nm)O(nm)O(nm)O(n+m)O(n+m)O(n+m)

1
หอคอยแห่งฮานอย แต่มีการกำหนดค่าเริ่มต้นและครั้งสุดท้ายโดยพลการ
เมื่อเร็ว ๆ นี้ฉันมาข้ามปัญหานี้การเปลี่ยนแปลงของทาวเวอร์ของฮานอย คำชี้แจงปัญหา: พิจารณารูปแบบที่แตกต่างของความรู้ดีหอคอยแห่งฮานอย: เราได้รับหอคอยและดิสก์nnnขนาดซ้อนกันในหอคอยบางแห่ง วัตถุประสงค์ของคุณคือถ่ายโอนดิสก์ทั้งหมดไปยังหอคอยด้วยการเคลื่อนไหวน้อยที่สุดเท่าที่จะทำได้ แต่คำนึงถึงกฎต่อไปนี้:1 , 2 , 3 , … , ม1,2,3,...,ม.1,2,3,\dots,mkTHkTHk^{\text{th}} การย้ายดิสก์ครั้งละหนึ่งแผ่นเท่านั้น ไม่เคยย้ายดิสก์ที่มีขนาดใหญ่กว่าไปยังดิสก์ที่เล็กกว่า การเคลื่อนย้ายระหว่างอาคารที่มีระยะทางที่มากที่สุดdddd (ข้อ จำกัด ในปัญหาดั้งเดิม: และจำนวนกรณีทดสอบคุณสามารถสรุปได้ว่าปัญหาทั้งหมดสามารถแก้ไขได้ในการเคลื่อนไหวไม่เกิน )3 ≤ n ≤ 1,0003≤n≤10003 \le n \le 1000m ≤ 100ม.≤100m \le 100≤ 1,000≤1000\le 1000200002000020000 มันเป็นสิ่งที่น่าสนใจ หอคอยคลาสสิคของปัญหาฮานอยมีแหล่งที่มาปลายทางและหอคอยชั่วคราวที่ใช้ในการย้ายดิสก์จากแหล่งที่มาไปยังปลายทาง ปัญหาที่เกิดขึ้นบนไซต์นั้นจะมีการกำหนดค่าเริ่มต้นและขั้นสุดท้าย วิธีการหนึ่งจะเข้าถึงปัญหานี้ได้อย่างไร

3
จำนวนของเซ็ตย่อยที่แต่ละหมายเลขตั้งแต่ 1 ถึง
ปัญหาของฉัน ได้รับผมต้องการที่จะนับจำนวนของมัลติถูกต้องSMultisetนั้นถูกต้องถ้าn S SnnSSSS ผลรวมขององค์ประกอบของคือและS nSSnn ตัวเลขจากทุกเพื่อสามารถแสดงไม่ซ้ำกันเป็นผลรวมของบางส่วนขององค์ประกอบของที่S1 n11nnSS ตัวอย่าง. ตัวอย่างเช่นถ้าn = 5n = 5n=5แล้ว{ 1 , 1 , 1 , 1 , 1 } , { 1 , 2 , 2 } , { 1 , 1 , 3 }{ 1 , 1 , 1 , 1 , 1 } …

1
ความยาวเฉลี่ยของเส้นทาง st (ง่าย) ในกราฟกำกับ
เนื่องจากข้อเท็จจริงที่ว่าการแจกแจงเส้นทาง - tเป็นปัญหา # P-complete จะมีวิธีที่มีประสิทธิภาพที่คำนวณ (หรืออย่างน้อยประมาณ) ความยาวเฉลี่ยของเส้นทางs - tโดยไม่ต้องแจกแจงได้หรือไม่ ถ้าเส้นทางได้รับอนุญาตให้กลับไปที่จุดยอดsssเสื้อเสื้อtsssเสื้อเสื้อt ผลลัพธ์ที่เกี่ยวข้องในกราฟพิเศษอาจมีประโยชน์เช่นกัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.