Вот код:
эта функция предназначена для обратного массива.
void rev(int* nums, int count){
for(int i = 0; i<count; i++){
int temp = *(nums+i);
*(nums+i) = *(nums+count-1-i);
*(nums+count-1-i) = temp;
}
}
эта функция предназначена для реализации функции rev ().
void rotate(int* nums, int numsSize, int k) {
int*q = nums;
int count = numsSize - k;
rev(nums, count);
q = q+k;
rev(q, k);
rev(nums, numsSize);
}
Я передаю адрес массива в rev()
, но когда он выходит из цикла for rev()
, nums[]
не меняется.
что не так с моим кодом?