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

1
โอกาสที่รหัสนี้จะถูกยกเลิกเป็นอย่างไร
ฉันเขียนรหัส Python นี้และสงสัยว่าบางครั้งมันก็ไม่ยุติ (สมมติว่าเรามีหน่วยความจำ / เวลาที่ไม่มีที่สิ้นสุดและไม่จำกัดความลึกของการเรียกซ้ำ) คุณคิดว่ามันจะยุติโดยสังหรณ์ใจเนื่องจากในบางจุดคุณจะต้องโชคดีและถ้ามันไม่ยุติคุณมีเวลาไม่ จำกัด ที่จะได้รับโชคดี ในขณะที่ความลึกของการเรียกซ้ำเพิ่มขึ้นคุณจะต้องกลายเป็นผู้โชคดีมากขึ้น import random def random_tree(): if random.random() < 0.5: return 0 return [random_tree() for _ in range(random.randint(1, 5))] หากrandom_treeไม่ยุติเสมอไปทำไมและโอกาสที่จะยุตินั้นมีอะไรบ้าง ฉันพยายามคำนวณโดยใช้ซึ่งในนั้นมันไร้ประโยชน์ที่ยอดเยี่ยมอย่างใดอย่างหนึ่งให้คำตอบ ~ 0.684124หรือ ... 1P= 1 - ( 1 - 0.5 ) ( 1 - ( P+ P2+ P3+ P4+ P5) / …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.