int shiftRA(int how_many,int SIZE,int index)
{
return (index+how_many) % SIZE;
}
Bu bir sağa kaydırma algoritması başarılı bir algoritma ve sadece matematiksel işlemlere dayanıyor.
Elemanın bulunduğu index i fonksiyona parametre olarak gönderip dizi kaç kere kaydırmak istediğinizi belirttiğinizde -biz ona şimdilik x diyelim- size o index in x kere kaydırıldığında yeni indexi ne olur sorusunun cevabını üretir.
how_many=kaç kere kaydıracağınız
SIZE= dizinizin boyutu(büyüklüğü-elemansayısı)
index=değiştirmek istediğiniz index
bunu bir örnek ile sonlandıralım...
int main()
{
int a[5]={1,2,3,4,5};
int b[5];//dizideki verileri kaybetmemek için yeni bir dizi oluşturduk.
for(int i=0;i<5 font="" i="">
b[shiftRA(2,5,i)]=a[i];
}
bu kodu inceleyip diğer dillere uyarlayabilirsiniz.Eğer uyarlamamı istediğiniz sorun yaşadığınız bir sey olursa yorumlarda belirtin lütfen...
ŞAMİL "SOFTSAM" ÖZÇELİK
Hiç yorum yok:
Yorum Gönder