คำแนะนำเกี่ยวกับอัลกอริธึม Fibonacci Java
ลำดับฟีโบนักชีเป็นลำดับที่ตัวเลขถัดไปคำนวณโดยการคำนวณผลรวมของตัวเลขสองตัวก่อนหน้า
ลำดับนี้อ้างว่ามีชื่อเสียงในวิชาคณิตศาสตร์ ยังปรากฏอยู่ในธรรมชาติ ตัวอย่างเช่น ดอกไม้ส่วนใหญ่มีกลีบดอกที่จัดเรียงเหมือนลำดับฟีโบนักชี
ในคู่มือนี้ เราจะพูดถึงวิธีคำนวณชุดตัวเลขฟีโบนักชีโดยใช้ Java เราจะอธิบายขั้นตอนวิธี Fibonacci Java สองชุดเพื่อช่วยคุณในการเริ่มต้น
ลำดับฟีโบนักชีคืออะไร
คุณอาจได้เรียนรู้เกี่ยวกับลำดับฟีโบนักชีในวิชาคณิตศาสตร์ระดับมัธยมปลาย
ตัวเลขแรกในลำดับ Fibonacci คือ 0 และ 1 ตัวเลขที่ตามมาจะคำนวณโดยการบวกตัวเลขก่อนหน้าสองตัวเข้าด้วยกัน มาดูลำดับที่ยาวกว่านี้กัน:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55
ลำดับนี้สามารถดำเนินต่อไปได้ตลอดไปขึ้นอยู่กับจำนวนตัวเลขที่คุณต้องการคำนวณ
ลำดับฟีโบนักชีสามารถทำได้สองวิธี:
81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้
ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก
- การใช้ฟังก์ชันวนซ้ำ
- การใช้อัลกอริธึมแบบเรียกซ้ำ
เราจะอธิบายวิธีการทั้งสองนี้
โปรแกรม Java Fibonacci ซ้ำ
วิธีการวนซ้ำเป็นจุดเริ่มต้นที่ดีที่สุด การเขียนโปรแกรมแบบวนซ้ำคือเมื่อคุณใช้ลูป เช่น for loop เพื่อวนซ้ำผ่านรายการและดำเนินการงาน
การเขียนโปรแกรมแบบวนซ้ำทำให้คุณสามารถกำหนดขั้นตอนซ้ำๆ ได้โดยอัตโนมัติ เนื่องจากมีสูตรที่ชัดเจนสำหรับการคำนวณตัวเลขถัดไปในลำดับฟีโบนักชี เราจึงสามารถใช้วิธีการวนซ้ำเพื่อนำอัลกอริทึมไปใช้
เริ่มต้นด้วยการประกาศคลาสและวิธีการสำหรับโปรแกรมของเรา เราจะกำหนดตัวแปรสามตัวที่เราจะใช้สำหรับโปรแกรมของเรา
public class FibonacciSequence { public static void main(String[] args) { int number = 5, firstTerm = 0, secondTerm = 1; } }
ตัวแปร "number" ติดตามจำนวนคำที่เราจะคำนวณ “firstTerm” และ “secondTerm” เก็บค่าที่หนึ่งและที่สองในลำดับตามลำดับ สิ่งนี้จะเปลี่ยนเพื่อจัดเก็บสองรายการก่อนรายการที่เราเพิ่งคำนวณในภายหลังในโปรแกรมของเรา
ตอนนี้ มาเขียน for loop ที่คำนวณตัวเลขฟีโบนักชีถัดไปตามลำดับ:
for (int i = 0; i < number; ++i) { System.out.println(firstTerm); int nextNumber = firstTerm + secondTerm; firstTerm = secondTerm; secondTerm = nextNumber; }
ลูปนี้พิมพ์ค่าของ firstTerm ก่อน ในการวนซ้ำครั้งแรก ค่านี้คือ 0 ถัดไป การวนซ้ำจะคำนวณตัวเลขถัดไปโดยการเพิ่ม firstTerm และ secondTerm เข้าด้วยกัน
รหัสของเราจะกำหนดค่าของ firstTerm ให้กับค่าของ secondTerm SecondTerm กลายเป็นหมายเลขถัดไปของเรา
เรียกใช้โค้ดของเราแล้วดูว่าเกิดอะไรขึ้น:
0 1 1 2 3
รหัสของเราได้คำนวณค่าห้าค่าแรกในลำดับแล้ว
โปรแกรม Java Fibonacci แบบเรียกซ้ำ
ลำดับฟีโบนักชีสามารถคำนวณได้โดยใช้อัลกอริธึมแบบเรียกซ้ำ เป็นฟังก์ชันที่เรียกตัวเองเพื่อแก้ปัญหา สามารถใช้อัลกอริธึมแบบเรียกซ้ำได้เนื่องจากมีสูตรที่สอดคล้องกันเพื่อใช้ในการคำนวณตัวเลขในลำดับฟีโบนักชี
เริ่มต้นด้วยการเริ่มต้นชั้นเรียนของเรา:
class FibonacciSequence { }
ต่อไป เราจะเขียนฟังก์ชันที่ใช้การเรียกซ้ำเพื่อคำนวณค่าถัดไปในลำดับ:
static void getNextValue(int number, int firstTerm, int secondTerm) { if (number > 0) { System.out.println(firstTerm); int nextNumber = firstTerm + secondTerm; firstTerm = secondTerm; secondTerm = nextNumber; getNextValue(number - 1, firstTerm, secondTerm); } }
วิธีนี้จะเพิ่มค่าของ firstTerm และ secondTerm เพื่อคำนวณค่าถัดไป สิ่งนี้จะเกิดขึ้นตราบใดที่ค่าของ “number” มากกว่า 0 “number” จะติดตามจำนวนตัวเลขที่เหลือที่จะคำนวณในลำดับ
เมื่อคำนวณค่าถัดไปแล้ว ฟังก์ชัน getNextValue() จะถูกเรียกซ้ำ คราวนี้ค่าของ “ตัวเลข” จะลดลงหนึ่ง เนื่องจากทุกครั้งที่เรียกใช้ฟังก์ชัน จะมีการคำนวณตัวเลขใหม่
มาเขียนโปรแกรมหลักที่ใช้ฟังก์ชันแบบเรียกซ้ำของเราและประกาศตัวแปรที่เราจะใช้กัน:
public static void main(String args[]) { int number = 5, firstTerm = 0, secondTerm = 1; getNextValue(number, firstTerm, secondTerm); }
“ตัวเลข” แสดงถึงจำนวนค่าที่เราต้องการคำนวณ firstTerm เป็นเทอมแรกในรายการ SecondTerm เป็นเทอมที่สองในรายการ
เมื่อเราเรียก getNextValue
วิธีการ การคำนวณของเราเริ่มต้นขึ้น เรียกใช้รหัสของเราเพื่อแสดงตัวเลขฟีโบนักชี:
0 1 1 2 3
ค่าห้าค่าแรกในลำดับฟีโบนักชีได้รับการคำนวณแล้ว!
บทสรุป
ลำดับฟีโบนักชีเป็นเรื่องปกติในวิชาคณิตศาสตร์ การคำนวณ และธรรมชาติ ตัวเลขถัดไปในลำดับคำนวณโดยการบวกตัวเลขสองตัวก่อนหน้าเข้าด้วยกัน ลำดับเริ่มต้นด้วยตัวเลข 0 และ 1
ลำดับนี้สามารถคำนวณได้โดยใช้วิธีการแบบวนซ้ำหรือแบบเรียกซ้ำ ตอนนี้คุณพร้อมที่จะคำนวณอนุกรมฟีโบนักชีในภาษาจาวาแล้ว