📄 tsp_possubtract.m
字号:
function result = TSP_posSubtract(a,b)
n = size(a,2);
len = 0;
pa = zeros(1,n);
pb = zeros(1,n);
for i=1:n
pa(a(i)) = i;
pb(b(i)) = i;
if (a(i) ~= b(i))
len = len + 1;
end % if...
end % for...
% the two sequence are identical...
if (len == 0)
result = 0;
return;
end % if...
j = 1;
result = zeros(1,2);
for i=1:len-1
while(a(j) == b(j) && j < n)
j = j + 1;
end % while...
if (j == n)
return;
end % if...
% result(i,:) = [j pa(b(j))];
if (i ~= 1)
result = [result;j pa(b(j))];
else
result = [j pa(b(j))];
end % if...
% one bit permutation...
t = a(j);
a(j) = a(pa(b(j)));
a(pa(b(j))) = t;
% update the position record vector...
pa(t) = pa(b(j));
pa(b(j)) = j;
end % for...
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -