我需要使用矢量化来删除我的 for 循环中的嵌套 while 循环,以制作插入排序程序。我不允许在我的 for 循环中有一个 while 循环,我必须这样做“这样你的函数中除了最外层的 for 循环之外没有 while 或 for 循环”。
这是我目前拥有的代码
function insertsort(array)
array = [2 1 3 2 1]
for i = 2:length(array)
value = array(i);
j = i - 1;
while (j >= 1) && (array(j) > value)
array(j+1) = array(j);
j = j-1;
end
array(j+1) = value;
end %forLoop
disp(array);
end %insertionSort