昨天碰到了個盒子分形問題,其實剛開始看上去沒思路,後來看題可以把這個問題用遞迴解決,把問題分割解決。
**題目如下:**
(1)規模為1的盒子分形為
x(2)規模為2的盒子分形為
x x
xx x
(3)若用b(n - 1)表示規模為n-1的盒子分形,則規模為n的盒子分形為
b(n - 1) b(n - 1)
b(n - 1)
b(n - 1) b(n - 1)
你的任務是,輸出規模為n的盒子分形。
例如,規模為3的盒子分形輸出如下:
x x x x
x x
x x x x
x x
xx x
x x x x
x x
x x x x
**如下:
#include
#include
using
namespace
std;
const
int max = 730;
char maps[max][max];
//x, y 為當前盒子中心點,n為當前盒子的邊長
void box(int n, int x, int y)
else
}int main()
}box(n, size/2, size/2);
for (int i = 0; i < size; i++)
else
}cout
0;}
分形《二》分形的遞迴演算法
遞迴演算法是把問題轉化為規模縮小了的同類問題的子問題。1 核心的子問題演算法。2 遞迴呼叫。3 給定遞迴出口。遞迴設計使程式簡潔,也體現了設計思路在整體 區域性上結合的嚴謹,但仍不提倡程式設計使用,因為其執行效率低且占用棧的空間問題突出。作為解決思路的一種方式還是具有魅力。分形的自我相似,自我複製和...
分形的遞迴輸出
分形,具有以非整數維形式充填空間的形態特徵。通常被定義為 乙個粗糙或零碎的幾何形狀,可以分成數個部分,且每一部分都 至少近似地 是整體縮小後的形狀 即具有自相似的性質。乙個盒狀分形定義如下 度為1的盒分形為 x度為2的盒分形為 x x xx x依次類推,如果b n 1 表示n 1度的盒分形,則n度的...
分形的遞迴輸出
分形,具有以非整數維形式充填空間的形態特徵。通常被定義為 乙個粗糙或零碎的幾何形狀,可以分成數個部分,且每一部分都 至少近似地 是整體縮小後的形狀 即具有自相似的性質。乙個盒狀分形定義如下 度為1的盒分形為 x度為2的盒分形為 x xx x x依次類推,如果b n 1 表示n 1度的盒分形,則n度的...