คุณเรียกสิ่งนี้ว่าการเพิ่มประสิทธิภาพ? [ปิด]


9

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

กฎเดียวเท่านั้น:

  • ตัวอย่างทั้งสองจะต้องจบด้วยผลลัพธ์ที่แน่นอนเดียวกัน (สำหรับอินพุตที่กำหนดเหมือนกันหากมี)

1
โดยไม่ต้องเลือกงานเฉพาะฉันคิดว่ามันกว้างเกินไปที่จะน่าสนใจ คุณควรระบุด้วยว่าทั้งสองตัวอย่างต้องใช้ภาษาเดียวกัน
Dennis

@ เดนนิสใช่มันอาจจะกว้างเกินไปฉันแค่อยากเห็นแนวทางที่สร้างสรรค์ นอกจากนี้ยังไม่มีข้อ จำกัด เกี่ยวกับภาษาเพื่อให้สามารถมีอิสระในการสร้างสรรค์มากขึ้น
vrwim

9
อิสระในการสร้างสรรค์ไม่ได้นำไปสู่คำตอบที่สร้างสรรค์ มันต้องใช้ความคิดสร้างสรรค์มากขึ้นในการแก้ปัญหาที่ยากกว่างานง่าย ๆ
Dennis

คำตอบ:


11

Python 3

ดูเหมือนจะเร็ว ...

 print(0 < 10**100 - 1 < 10**100)

ดูเหมือนจะช้า ...

 print(10**100 - 1 in range(0, 10**100))

แต่ทั้งสองทำงานในเวลาที่คล้ายกันมาก! rangeมีการนำไปปฏิบัติอย่างมีประสิทธิภาพin


คำถามปิดกันสิ่งนี้ไม่ได้ตรงกันข้ามกับสิ่งที่ถามคำถามหรือไม่ คุณต้องการบางสิ่งที่ดูเร็ว แต่จริงๆแล้วช้าไม่ใช่สิ่งที่ดูช้า แต่เร็วจริง ๆ ...
Sp3000

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