Diễn đàn    Cấu trúc dữ liệu và giải thuật    Phương pháp đệ quy (quay lui, recursive) và Fractal

Thành viênTrả lời
kaka

Thiên thần Kaka
37  bài
19-2-2010 16:47:7
Là phương pháp viết hàm số mà 1 hàm tự gọi đến chính nó.

Ví dụ kinh điển : hàm số tính giai thừa

[code]
function giai_thua(n)
{
if (n <= 1)
return 1;
else
return n * giai_thua(n-1);
}
[/code]
 
kaka

Thiên thần Kaka
37  bài
19-2-2010 16:52:39
Nhờ phương pháp đệ quy chúng ta có 1 cái tam giác tương đối hay ho như sau



tam giác sierpinski.

Cứ lấy 3 trung điểm trên 3 cạnh của tam giác, nối nó lại thì lại có 3 tam giác con nữa, cứ thế mà vẽ tiếp nó sẽ ra cái hình trên.


Cái này gọi là kim tự tháp sierpinski
 
kaka

Thiên thần Kaka
37  bài
19-2-2010 16:58:32
Trong đồ họa còn sinh ra thêm 1 khái niệm nữa là các hình fractal (tiếng việt hình như gọi là phân dạng).

Trên wiki định nghĩa thế này :
fractal là một vật thể hình học thường có hình dạng gấp khúc trên mọi tỷ lệ phóng đại (thực ra là hinh được vẽ bằng luật đệ quy)

Và bây giờ là bông tuyết Koch





Xây dựng một bông tuyết Koch cơ bản từ tam giác đều

 
kaka

Thiên thần Kaka
37  bài
19-2-2010 17:3:44
Mình nghe bảo sử dụng cách vẽ fractal này có thể hình thành các đốm lửa, và sa bàn (mô hình) mặt đấy có thể xây dựng dựa trên fractal. Mình cũng chơi đế chế nhiều nhưng không biết các đốm lửa trong đế chế có được vẽ bằng fractal không nhưng trông có vẻ rất thật.



Kochsim.gif
Cái này vẫn là bông tuyết Koch thôi như mà vứt đi phần trên chỉ để lại phần dưới.
 
kaka

Thiên thần Kaka
37  bài
19-2-2010 17:14:12
Một số hình ảnh khác về fractal



Sierpinski cookies



Sierpinski 2 chiều (2 dimensions)



Sierpinski tròn (carpet)






tình yêu của Sierpinski

 
coder

lap trinh khong bien gioi
144  bài
4-3-2010 0:7:11
Bài toán đệ quy nổi tiếng: bài toán tháp hà nội (hình như chuẩn hơn là Tháp Ấn Độ chứ không phải Hà Nội, dân việt mình phạng liên thiên vào). Nó mô tả thế này : có 3 cái cột, cột 1 có 64 cái đĩa từ lớn đến nhỏ, nhiệm vụ là phải vứt toàn bộ các đĩa qua cột thứ 3 theo đúng thứ tự lớn ở dưới, bé ở trên.



Họ còn bốc phét thêm, khi chuyển xong thì ngày tận thế đến quả thật là vui, và giải pháp cho bài này nếu dùng đệ quy thì vô cùng đơn giản. Mà nói về đệ quy thì còn phải nói đến vấn để khử đệ quy (dùng stack).
---
http://coder.awas.vn
http://mobile.awas.vn
http://vtv.awas.vn
http://baihatviet.awas.vn
 

Chủ đề gần đây :

Cùng loại :

Tên file Mô tả chi tiết Ngày
NWeb.zip (1) Module đơn giản Newsweb trên Dotnetnuke v10.x.x.x10/18/2025 8:08:11 AM
vspforum.zip (11) Ma nguon vspforum ngay xua4/18/2023 6:38:37 AM
pdfjs.rar (2) pdfjs 2017 : hiển thị tốt trên iphone 11, 12, 13 không lỗi, bản 2012 sẽ lỗi trên iphone6/21/2022 11:52:48 AM
pdfjs2.rar (2) Xem file pdf bằng viewer.hml cua pdfjs (thư viện chuẩn mozilla) 2012. https://mozilla.github.io/pdf.js/getting_started/#download có thể download bản prebuild tại đây6/21/2022 11:52:04 AM
runner.zip (0) using three.js, orbitcontrol to view an object move random on map. Di chuyển 1 đồ vật ngẫu nhiên trên bản đồ, sử dụng với demo nhân viên di chuyển trong văn phòng. Toàn js download về là chạy12/5/2019 5:55:14 PM
gmap.zip (1) google map + marker7/17/2019 2:25:05 PM
vinsmarthomeservice.zip (1) java post json to api, use AsyncTask, event listener7/9/2019 5:00:10 PM
fblogin.zip (0) Login facebook bang javascript SDK7/9/2019 9:16:37 AM
autocomplete-location.zip (2) autocomplete location geo from google place, html + js7/4/2019 4:37:55 PM
WebAPI.zip (8) api for android access db (v1.0.0)7/4/2019 9:14:17 AM