พื้นหลังเล็กน้อย:ฉันเป็นหนึ่งในสองโปรแกรมเมอร์ของแผนก 10 คนของเรา (ที่เหลือเป็นศิลปินและผู้บริหาร) เราสองคนทำการเข้ารหัสที่จำเป็นเพื่อให้ทุกอย่างราบรื่นและพัฒนาโครงการใด ๆ ที่เกิดขึ้น ฉันเขียนโปรแกรมมาประมาณ 4 ปีแล้วซึ่งนี่เป็นงานแรกของเขา "จริง" (ตามที่เขาวางไว้) โดยทั่วไปเรากำลังทำงานในโครงการต่าง ๆ ในเวลาใดก็ได้
สองสามเดือนที่ผ่านมาฉันได้พัฒนาชุดชั้นเรียน (ไม่สมบูรณ์) ที่จะใช้สำหรับโครงการในภายหลัง ส่วนใหญ่ของโครงการนั้นได้มอบหมายให้เขา (สำหรับเหตุผลด้านการเรียกเก็บเงิน) เพื่อออกแบบและตั้งโปรแกรมอินเทอร์เฟซ GUI ตั้งแต่เขายังใหม่ฉันเลยช่วยออกแบบและบอกว่าจะขอความช่วยเหลือถ้าเขาต้องการมันด้วยส่วนที่เหลือ เขาสร้างอินเทอร์เฟซให้เสร็จเมื่อไม่กี่สัปดาห์ที่ผ่านมาซึ่งเขาสาธิตให้แสดงว่ามันใช้งานได้แม้ว่าจะช้าไปนิด
ส่วนต่อไปของโครงการได้เริ่มต้นแล้วซึ่งฉันกำลังดำเนินการอยู่ ฉันเปิดอินเทอร์เฟซเพื่อเริ่มต้นด้วยขั้นตอนถัดไปและพบปัญหาในทันที (ช้าเล็กน้อยคือการพูดน้อยข้อผิดพลาดในการกระทำทั่วไป ฯลฯ ) ฉันค้นหาโค้ดเพื่อดูปัญหาบางอย่างและกำลังค้นหาการO(n^n)
โทรที่ควรO(n)
พิมพ์สมมติฐานโดยไม่มีการตรวจสอบข้อผิดพลาด (เป็น Python) การอ้างอิงไปยัง GUI ที่เพิ่มเข้ากับรหัสดั้งเดิมและอื่น ๆ
ตอนนี้ฉันอยากจะสอนเขาว่ามีอะไรผิดปกติและจะแก้ไขได้อย่างไร แต่เขาได้ย้ายไปยังโครงการต่อไปของเขาแล้วและเมื่อไม่กี่สัปดาห์ที่ผ่านมา ฉันเกรงว่าฉันพูดว่า "กลับไปทำในสิ่งที่ถูกต้อง!" (ด้วยความช่วยเหลือของหลักสูตร) รุนแรงเกินไปและเรายังมีโครงการอื่น ๆ ให้ทำในระหว่างนี้ ตอนนี้ฉันควรจะแก้ไขโค้ดด้วยตัวเองแล้วและพยายามจับสิ่งต่าง ๆ ในอนาคตหรือไม่?
O(n^n)
เว้นแต่จะไม่มีวิธีอื่นใด หากพวกเขาทำเช่นนั้นพวกเขาอาจได้ C ในอัลกอริทึมหรือไม่ได้รับมันหรือมีครูเส็งเคร็ง การใช้เครื่องมือบางอย่างเพื่อช่วยค้นหาปัญหาที่พบบ่อยจะดี อาจเป็นงานต่อไปที่ผู้ชายคนนี้สามารถเขียนทดสอบประสิทธิภาพ?