Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ฟีโบนักชี Java:A Guide

คำแนะนำเกี่ยวกับอัลกอริธึม 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

ลำดับนี้สามารถคำนวณได้โดยใช้วิธีการแบบวนซ้ำหรือแบบเรียกซ้ำ ตอนนี้คุณพร้อมที่จะคำนวณอนุกรมฟีโบนักชีในภาษาจาวาแล้ว