for (int i = len-1; i>=0; i--){ if (array[i] == i){ //i--; continue; } int k = array[i]; while (array[k] != k&&array[k] != i) { k = array[k]; } swap_with_zero(array, len, i); swap_with_zero(array, len, k); }
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
for (int i = len-1; i>=0; i--){ if (array[i] == i){ //i--; continue; } int k = array[i]; while (array[k] != k&&array[k] != i) { k = array[k]; } swap_with_zero(array, len, i); swap_with_zero(array, len, k); }