This one is quite similar to http://www.mathworks.nl/matlabcentral/cody/problems/1998-bleed-non-zeros-to-the-right.
But this time you are allowed to use regexp, regexprep, and regexpi. In fact, you are encouraged to do so, since I expect creative solutions, using dynamic regular expressions ( http://www.mathworks.nl/help/matlab/matlab_prog/dynamic-regular-expressions.html ).
You get a vector, some values and a lot of zeroes. Every zero is replaced by the first non-zero element to its left.
For example, [1 0 0 2 0] becomes [1 1 1 2 2] and [0 0 -12 13 0 i 0 -i 76.54321 0 0] becomes [0 0 -12 13 13 i i -i 76.54321 76.54321 76.54321].
Is it even easier now, or not? Still, eval and friends are forbidden.
Solution Stats
Solution Comments
Show commentsProblem Recent Solvers29
Suggested Problems
-
3950 Solvers
-
Back to basics 4 - Search Path
383 Solvers
-
Find the maximum number of decimal places in a set of numbers
3560 Solvers
-
Create matrix of replicated elements
401 Solvers
-
Fahrenheit to Celsius converter
611 Solvers
More from this Author31
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!