SORU
27 Mart 2012, Salı


Bu iki döngü için zaman ve önbellek performans açısından daha verimli olur

Hangi kodu aşağıdaki örnekleri önbellek performans açısından daha verimli olur? Neden?

int a[100][100];

for(i=0; i<100; i  )
{
   for(j=0; j<100; j  )
   {
       a[i][j] = 10;    
   }
}

ya

for(i=0; i<100; i  )
{
   for(j=0; j<100; j  )
   {
      a[j][i] = 10;    
   }
}

CEVAP
27 Mart 2012, Salı


İlk yöntem hücrelere atanan yanyana bırakır gibi biraz daha iyi.

İlk yöntem:

[ ][ ][ ][ ][ ] ....
^1st assignment
   ^2nd assignment
[ ][ ][ ][ ][ ] ....
^101st assignment

İkinci yöntem:

[ ][ ][ ][ ][ ] ....
^1st assignment
   ^101st assignment
[ ][ ][ ][ ][ ] ....
^2nd assignment

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Matt Steffanina

    Matt Steffan

    1 EYLÜL 2011
  • Murray Winiata

    Murray Winia

    2 ŞUBAT 2009
  • UnboxTechnology

    UnboxTechnol

    20 Ocak 2011