Hãy làm một bài tập nổi tiếng, và đây có thể là một câu hỏi phỏng vấn.
Chúng tôi sẽ thử và triển khai số Fibonacci.
Và số Fibonacci là như thế này.
Số đầu tiên là số không.
Khi đó số thứ hai là một.
Chúng luôn bắt đầu bằng số không.
Sau đó, đây là những gì sẽ xảy ra.
Chúng tôi thêm số không với một để bằng số tiếp theo.
Chúng tôi thêm một với một để bằng số tiếp theo.
Chúng tôi thêm từng người một để có số tiếp theo là ba để thêm số tiếp theo năm tám để thêm số tiếp theo, cứ
thế và tiếp tục như vậy.
Như bạn có thể thấy, điều này phát triển theo cấp số nhân.
Chà, nó phát triển rất cao, rất nhanh.
Và kiểu đánh số này thực sự xuất hiện rất nhiều trong tự nhiên.
Nhưng đó cũng là một vấn đề thú vị bởi vì những con số này, mặc dù ở thời điểm ban đầu, phát triển
thực sự, rất chậm, chúng ngày càng lớn hơn và ngày càng lớn hơn, và nó trở thành một vấn đề thực sự có thể làm
cạn kiệt tài nguyên.
Vì vậy, đây là những gì tôi muốn bạn làm.
Chúng ta sẽ tạo một hàm.
FIB.
Đó là một con số.
Và ở đây con số này sẽ là số chỉ số của Fibonacci.
Vì vậy, ví dụ, nếu đó là số thứ 20, thì nó phải có điều này.
Vì vậy, nếu tôi muốn, hãy giả sử fib 20.
Ở đây, trong trường hợp đó, tôi muốn bạn trả lại tất cả những con số này.
Sử dụng máy phát điện.
Vì vậy, đó là từng cái một cho đến khi chúng tôi đến vị trí này.
Bây giờ có hai cách để làm điều này.
Bạn có thể làm với danh sách hoặc chúng tôi có thể làm điều đó với một trình tạo.
Và bạn sẽ nhận thấy rằng với một trình tạo, nó dễ thực hiện hơn rất nhiều so với một danh sách, bởi
vì cuối cùng với một danh sách, bạn sẽ cạn kiệt tài nguyên.
Vì vậy, những gì tôi muốn bạn làm là xuất ra ở đây những con số mà bạn nhìn thấy ở đây cho đến tận năm 20.
Và nếu bạn muốn, bạn có thể tiếp tục tăng con số đó và xem điều gì sẽ xảy ra.
Và như một phần thưởng, bạn cũng có thể thử thực hiện điều này với một danh sách.
Vì vậy, nó cũng hiển thị trong một danh sách khổng lồ.
Tạm dừng video nếu bạn muốn ở đây.
Nếu không, tôi sẽ tiếp tục với câu trả lời.
Đầu tiên, những gì chúng ta muốn làm là nói A sẽ bằng 0 và B bằng một.
Vì vậy, A và B sẽ là đầu của các số.
Bây giờ ở đây, chúng ta sẽ sử dụng trình tạo sắp xếp.
Để lặp.
Đây là số lần mà chúng tôi sẽ cung cấp chức năng.
Bây giờ ở đây.
Đầu tiên tôi muốn b là bây giờ hoặc e giờ bằng bất kỳ số nào B là một và B là bất kỳ số tiếp theo
là gì.
Nhớ quy tắc với Fibonacci?
Ta thêm hai số đầu để được số thứ ba.
Vì vậy, chúng ta có một B để có được số tiếp theo, sau đó là B để có được số tiếp theo.
Và sau đó là B để lấy số tiếp theo.
Vì vậy, điều đầu tiên tôi muốn làm là thực sự nhường a và nói, này, chỉ cần cho tôi bất kỳ giá trị a là gì và sau đó tạm dừng
hàm cho đến phần tiếp theo.
Sau đó, sau khi vòng lặp for chuyển sang phần tiếp theo, tôi sẽ nói rằng tôi muốn A bằng B.
Và tôi muốn B bằng A cộng với B.
Hãy xem nếu điều đó có ý nghĩa.
Tôi đang nói, này, hãy trả lại hoặc nhường một từ danh sách này để lúc đầu nó sẽ bằng 0.
Sau đó, tôi muốn bạn tạo ra một bằng một bây giờ vì chúng ta đang chuyển sang và sau đó tôi muốn B bằng một
vì A đã biến thành một và sau đó là một trước đó.
Vậy B trở thành hai.
Nếu chúng ta nhìn qua đây, đó là lý do tại sao chúng ta muốn chúng ta có A và B ở đây và sau đó chúng ta muốn chuyển qua chỉ một
như thế này.
Vì vậy, B vẫn nên là một.
Vì vậy, những gì chúng tôi có thể muốn làm ở đây là thực sự không sửa đổi a.
Cho đến khi chúng ta có thể làm A cộng B.
Vì vậy, làm thế nào chúng ta có thể làm điều này?
Vâng, chúng ta có thể nói một cách đơn giản.
Giả sử một biến tạm thời và tạm thời này sẽ giữ nguyên giá trị a khi chúng ta đến đây, giá trị
này bằng 0, và sau đó chúng ta sẽ sửa đổi A thành một và sau đó B sẽ thay vì
A cộng, B sẽ là tạm thời, bằng không.
Cộng với bất cứ thứ gì ban đầu là B, cái nào là một.
Tôi biết điều này có thể cung cấp một khó hiểu.
Bạn có thể muốn tạm dừng ở đây và có thể in ra và xem chính xác những gì đang xảy ra, nhưng hy vọng chức năng của chúng tôi hoạt động
ngay bây giờ.
Nếu bây giờ tôi làm một cái gì đó như cho x trong fib và cho nó, hãy giả sử 100.
Và chúng ta hãy in ra câu trả lời.
Vì vậy, in.
X và tôi chạy cái này.
Được rồi, nhìn này.
Tôi nhận được tất cả các số Fibonacci của mình.
Hãy thực hiện 20 như chúng ta đã thấy trong ví dụ nếu tôi nhấp vào Chạy.
Tôi nhận được 4181.
Vì vậy, tôi ở tuổi 19 bởi vì hãy nhớ rằng số đếm của chúng tôi bắt đầu từ số không.
Vì vậy, về mặt kỹ thuật ở đây, nếu chúng ta muốn, chúng ta có thể thực hiện 21 ở đây, nhấp vào chạy.
Và khi cô ấy có sáu, bảy, sáu, năm, đó là những gì chúng tôi nhận được ở đây.
Rất, rất tuyệt.
Nhưng bạn có thể thấy con số tăng lên đáng kể như thế nào.
Khi chúng tôi tăng lên 1000.
Bây giờ, nếu chúng ta làm điều này trong một danh sách, nó sẽ giống như thế này.
Hãy sao chép ở đây.
Bây giờ 52 với một danh sách có nghĩa là chúng ta phải thêm một danh sách vào đây.
Và thay vì cho ra kết quả, chúng tôi sẽ thực hiện thêm dấu chấm kết quả.
Và chúng ta sẽ nối bất kỳ giá trị nào, đó là giá trị ban đầu.
Và sau đó chúng tôi sẽ làm điều tương tự như chúng tôi đã làm trước đây.
Vì vậy, thay vì ELT, bây giờ chúng tôi chỉ thêm vào danh sách này và cuối cùng chúng tôi chỉ quay trở lại.
Kết quả danh sách.
Bây giờ, nếu tôi trả lại giá trị này, hãy nói fib hai và cho nó 100 và tôi nhấp vào chạy và chúng ta hãy bình luận về
bản gốc với trình tạo.
Chà, có lẽ chúng ta nên in cái này, phải không?
Vì vậy, chúng ta hãy in.
Và nhấp vào Chạy.
Được rồi.
Đó là một danh sách lớn.
Bây giờ, nếu chúng ta làm 1000 ở đây.
Bạn thấy điều đó?
Nó mất khá nhiều thời gian.
Nếu chúng ta làm 10.000 thì sao?
Được rồi.
Nó chắc chắn mất một thời gian.
Và bạn có thể thấy ở đây điều này đang hoạt động khó khăn như thế nào.
Bạn biết gì?
Tôi sẽ dừng nó lại.
Và quay trở lại máy phát điện của chúng tôi.
Đường.
Và hãy làm 10.000 ở đây.
Hãy xem 10.000 trông như thế nào với máy phát điện.
Chà, nó vẫn đang làm việc chăm chỉ, nhưng tôi không lưu giữ bất kỳ điều này trong bộ nhớ.
Chúng tôi đang lấy từng cái một, và tôi có thể xử lý nó trong trường hợp của chúng tôi, chỉ cần in từng cái một.
Bây giờ đây là một câu hỏi phỏng vấn phổ biến.
Tôi nghĩ nó thực sự hơi khó hiểu một cách không cần thiết.
Nhưng nó chứng tỏ sức mạnh của máy phát điện.
Bạn có thể phải xem video này một vài lần, nhưng hy vọng đến giờ bạn cảm thấy thoải mái một chút với việc
sử dụng phạm vi và cách chúng tôi có thể cải thiện hiệu suất bằng cách sử dụng máy phát điện.
Hẹn gặp lại các bạn trong phần tiếp theo.
Tạm biệt.