Я пытаюсь перевести эталонную реализацию AP Clustering на C ++. Эта последовательность утверждений сбивает меня с толку, потому что похоже, что вектор c заполняется некоторыми числами, а затем быстро перезаписывается другим набором чисел. Что не имеет смысла. Вот код Matlab:
[tmp c]=max(S(:,I),[],2); c(I)=1:K;
Реализация R имеет нечто очень похожее:
c <- max.col(s[, I], ties.method="first")
c[I] <- 1:K
Это правда, что s равно NxN, а I имеет длину K << N. Однако как я прочитал, c имеет тот же размер, что и я, так что конечное значение - это просто перестановка 1: K, которая зависит от I, но не от результата первого оператора. </p>
Я думал, что знаю, что делает каждое утверждение, но комбинация - загадка. Пожалуйста, поправьте меня.