Henüz başka bir PHP MVC framework öğrenmeye yardımcı olmak için kendim için eğlenceli bir yan proje olarak, ben bir PHP gibi Reversi / Othello yazıyorum & oldum Ajax uygulaması, çoğunlukla basit şeyler. Ben nedenlerle bir dizi için çok boyutlu bir dizi kullanarak karşı karar ve yerine tamsayılar koordinatlara dönüştürmek için (64 unsurlar uzun zamandır bu durumda) bir doğrusal dizi ve bir kaç yöntem var.
Bu yüzden merak ettim, bir koordinat noktasına bir tamsayı dönüştürmek için herhangi diğer muhtemelen daha hızlı algoritmalar var?
function int2coord($i){
$x = (int)($i/8);
$y = $i - ($x*8);
return array($x, $y);
}
//Not a surprise but this is .003 MS slower on average
function int2coord_2($i){
$b = base_convert($i, 10, 8);
$x = (int) ($b != 0 ? $b/8 : 0); // could also be $b < 8 for condition
$y = $b % 10;
return array($x, $y);
}
Ve kuşaklar uğruna, metot coord2int için yazdı
function coord2int($x, $y){
return ($x*8)+$y;
}
Update:
So in the land of the weird, the results were not what I was expecting but using a pre-computed lookup table has predominantly shown to be the fastest, guess trading memory for speed is always a winner?
- Orada kez bir tablo burada ama ben SO ile nedeniyle şekillendirme sorunları kesti.