2012-11-22 45 views
0

我正在學校項目中工作,並在遞歸使用MATLAB時遇到了問題。 基本上,每次遞歸結束時,我想保存(x,y)座標,通過遞歸找到它們的順序,作爲矢量/數組。然後我想保存在另一個向量/數組中找到的所有數組。遞歸Matlab:將輸出保存在向量/數組中

總之,我想找到:

ArrayWithArrays(ArrayWithArrayWithXY)(XY coordinates) 

和輸出我從遞歸函數得到的是XY爲了 協調這可能使用MATLAB?

請告訴我,如果你需要我更具體。

謝謝你的任何答案。

+0

做遞歸函數? – grantnz

+0

目標是找到由座標組成的路徑。我想沿着這個方向存儲每個座標,以便從起始座標定位座標,先由第一個座標排序,然後是第二個座標,依次類推,直到達到目標。 – user1845910

回答

0

我不知道你的函數迭代了多少次。如果你不知道,請使用最大預設值,否則matlab會投訴分配。這個向量在每次迭代之後會更長,所以它需要一個新的內存位置。這裏有個例子n次迭代:

vector=zeros(n,2); vector(1,:)=[startx,starty];

現在例如一個簡單的功能要存儲在遞歸解決方案的每個步驟的結果,或只是多個單獨調用的最終結果

for i=2:n 
    vector(i,:)=[newcoorx,newcoory]; 
end 
+0

感謝您的回答 另一個問題是,遞歸alghoritm找到很多路徑,我只希望那些到達目標目標。所以我想要在這條路徑中的每個座標都重新回到目標。 要進一步指定:遞歸運行直到找到所有可能的路徑。許多路徑不會導致目標,但我想保存那些目標。 我想我必須使用某種類型的跟蹤作爲輸出/輸入(:-))到遞歸函數,以確定到達目標的正確路徑以及路上的所有座標。 – user1845910