Finding all integer vectors between two vector bounds

조회 수: 5 (최근 30일)
Mathieu
Mathieu 2018년 12월 20일
답변: James Tursa 2018년 12월 20일
I would like to find all the integers vectors between two vector bounds. For instance, suppose that
lb = [0;1;0;1]
ub = [2;1;0;1]
Then the function would return
[0;1;0;1]
[1;1;0;1]
[2;1;0;1]
I need this in arbitrary dimenions n, I plan on evaluate a function that takes each of these vectors as argument.
Thanks!

채택된 답변

James Tursa
James Tursa 2018년 12월 20일
You can use the FEX submission allcomb( ) by Jos for this:
c = arrayfun(@(a,b)a:b,lb,ub,'uni',false);
result = allcomb(c{:});
The vectors you want are the rows of the result. You can find allcomb here:

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Stair Plots에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by