คณิตศาสตร์สนุก
การใช้งานฟังก์ชั่นทางคณิตศาสตร์สูตรและแนวคิด
มันให้การใช้งานทางคณิตศาสตร์สำหรับหัวข้อต่าง ๆ ที่เกี่ยวข้องกับสิ่งทางคณิตศาสตร์เช่น Fibonacci, Euclidean, Prime Numbers และอื่น ๆ ยินดีต้อนรับหัวข้อหรือแนวคิดทางคณิตศาสตร์ใด ๆ หากคุณรักคณิตศาสตร์เข้าร่วมที่นี่ด้วยอัลกอริทึมและรหัสของคุณ!
ที่เก็บนี้ไม่ได้บังคับให้ใช้ภาษาการเขียนโปรแกรมเฉพาะ แต่ถ้าคุณใช้ Python คุณควรใช้ Python 3.6 เพื่อสนับสนุนหรือทำงาน (คุณใช้ Python 3.6+ เพียงตัวเดียวในอนาคต)
โซลูชันสามารถนำไปใช้ในสามวิธี:
- โดยการแก้ปัญหานิยาม คำจำกัดความทางคณิตศาสตร์ ตัวอย่างที่ดีคือซีรี่ส์ Fibonacci แต่การแก้ปัญหาตามคำจำกัดความของ Fibonacci มีประสิทธิภาพที่เลวร้ายที่สุด
- โซลูชัน ที่ดีที่สุด ซึ่งมีประสิทธิภาพที่ดีกว่าคำจำกัดความหนึ่ง (หรือโซลูชันที่ดีที่สุด)
- โซลูชัน ที่สร้างสรรค์ นี่อาจไม่ใช่วิธีที่ดีที่สุด แต่เป็นวิธีที่สร้างสรรค์หรือตลก
วิ่ง
- งูหลาม
-
python3 -m doctest <path>/<script_name.py> -v
การดำเนินการ
- เอบีเอส
- การรวมกัน
- การสลายตัว
- ความแตกต่าง
- simple_numerical_differentiation.py
- ลิด
- เกี่ยวกับแฟคทอเรต
- แฟคทอเรียล
- factorial_recursion.py
- ฟีโบนักชี
- fibonacci.py
- fibonacci_optimal_memoization.py
- fibonacci_optimal_iteration.py
- GCD
- gcd.py
- gcd_optimal_euclidean.py
- ที่สำคัญ
- LCM
- lcm.py
- lcm_optimal_euclidean.py
- เมทริกซ์
- การเปลี่ยนรูป
- นายก
- is_prime.py
- is_prime_improved.py
- is_prime_optimal.py
- next_prime.py
- sieve_of_eratosthenes.py
- Pythagorean_triple
- square_root
- ตรีโกณมิติ
ผลงาน
- คุณสามารถใช้อัลกอริทึมใด ๆ สำหรับสิ่งคณิตศาสตร์
- หากคุณเพิ่มอัลกอริทึมประเภทใหม่โปรดเพิ่มสิ่งนั้นใน ReadMe เป็นหมวดหมู่ใหม่
- หากคุณต้องการเพิ่มเวอร์ชันภาษาการเขียนโปรแกรมอื่น ๆ ของโซลูชันที่มีอยู่คุณต้องตั้งชื่อไฟล์ซอร์สโค้ดเหมือนกับไฟล์ที่มีอยู่
- เป็นการดีกว่าที่จะให้คำอธิบายของอัลกอริทึมของคุณในความคิดเห็นของไฟล์ซอร์สโค้ด
- คุณสามารถใช้ภาษาการเขียนโปรแกรมใด ๆ ที่คุณเลือก แต่คุณ ควร ดูแลการจัดการจำนวนมาก และถ้าคุณต้องการมีส่วนร่วมอัลกอริทึมด้วย Python คุณ ควร เขียนสคริปต์ด้วย Python 3.6+
- คุณ ต้อง เขียนรหัสทดสอบสำหรับแต่ละอัลกอริทึม ดูตัวอย่างสำหรับการเขียนการทดสอบ (ตัวอย่างเขียนใน Python)
- ไม่แนะนำให้ใช้ห้องสมุดคณิตศาสตร์ในตัวให้เป็นไปได้ เพราะที่เก็บนี้สนับสนุนให้ใช้สิ่งคณิตศาสตร์ด้วยตัวเอง
- เป็นการดีกว่าที่จะให้โซลูชั่นที่ดีที่สุดเช่นกันสำหรับแต่ละอัลกอริทึม
การเปลี่ยนแปลง
การเพิ่มประสิทธิภาพ
- เชื่อมโยง Travis CI เพื่อเรียกใช้การทดสอบเมื่อ commits #4
ที่ตายตัว
- อย่าตรวจสอบฟังก์ชั่นประเภทที่ไม่ถูกต้องแปลก ๆ ที่ยอมรับเฉพาะประเภทเฉพาะ #3
- ลบการตรวจสอบประเภทที่เข้มงวดในบางฟังก์ชั่น #2
ผู้มีส่วนร่วม
- @mingrammer
- @xaltonon
- @tsimpdim
ใบอนุญาต