История изменений
Исправление hateyoufeel, (текущая версия) :
Если трудно - есть вон питон например :) Ну ладно, пусть будет раст))
Отличная клоунада! Но нет. Вот тебе три примера достаточно банальной функции:
void tmp_swap(int *a, int *b) {
int tmp = *a;
*a = *b;
*b = tmp;
}
void xor_swap(int *a, int *b) {
*a ^= *b;
*b ^= *a;
*a ^= *b;
}
void minus_swap(int *a, int *b) {
*a = *a + *b;
*b = *a - *b;
*a = *a - *b;
}
Внимание вопрос: какой из них быстрее и почему это вариант с временной переменной? Есличо, в выхлопе в асме временной переменной скорее всего не будет.
Исправление hateyoufeel, :
Если трудно - есть вон питон например :) Ну ладно, пусть будет раст))
Отличная клоунада! Но нет. Вот тебе три примера достаточно банальной функции:
void tmp_swap(int *a, int *b) {
int tmp = *a;
*a = *b;
*b = tmp;
}
void xor_swap(int *a, int *b) {
*a ^= *b;
*b ^= *a;
*a ^= *b;
}
void minus_swap(int *a, int *b) {
*a = *a + *b;
*b = *a - *b;
*a = *a - *b;
}
Внимание вопрос: какой из них быстрее и почему это вариант с временной переменной? Есличо, в выхлопе в асме временно переменной скорее всего не будет.
Исправление hateyoufeel, :
Если трудно - есть вон питон например :) Ну ладно, пусть будет раст))
Отличная клоунада! Но нет. Вот тебе три примера достаточно банальной функций:
void tmp_swap(int *a, int *b) {
int tmp = *a;
*a = *b;
*b = tmp;
}
void xor_swap(int *a, int *b) {
*a ^= *b;
*b ^= *a;
*a ^= *b;
}
void minus_swap(int *a, int *b) {
*a = *a + *b;
*b = *a - *b;
*a = *a - *b;
}
Внимание вопрос: какой из них быстрее и почему это вариант с временной переменной?
Исправление hateyoufeel, :
Если трудно - есть вон питон например :) Ну ладно, пусть будет раст))
Отличная клоунада! Но нет. Вот тебе три примера достаточно банальной функций:
void tmp_swap(int *a, int *b) {
int tmp = a;
a = b;
b = tmp;
}
void xor_swap(int *a, int *b) {
*a ^= *b;
*b ^= *a;
*a ^= *b;
}
void minus_swap(int *a, int *b) {
*a = *a + *b;
*b = *a - *b;
*a = *a - *b;
}
Внимание вопрос: какой из них быстрее и почему это вариант с временной переменной?
Исходная версия hateyoufeel, :
Если трудно - есть вон питон например :) Ну ладно, пусть будет раст))
Отличная клоунада! Но нет. Вот тебе три примера достаточно банальной функций:
void tmp_swap(int *a, int *b) {
int tmp = a;
a = b;
b = tmp;
}
void xor_swap(int *a, int *b) {
*a ^= *b;
*b ^= *a;
*a ^= *b;
}
void minus_swap(int *a, int *b) {
*a = *a + *b;
*b = *a - *b;
*a = *a - *b;
}
Внимание вопрос: какой из них быстрее и почему это вариант с временной переменной?