![]() | |
| | #1 (permalink) |
| Üye Üyelik Tarihi: 04/2008 Yer: kayseri
Mesaj: 45
|
arkadaşlar pztesi veriyapıları sınavım var sınavda full java program sorulacak ama bu stack olayını anlatırmısınız veya okulda yaptıgımız bi örneği yazsam mantıgını anlatırmısınız --------------------------------------------------------------------------- class stackchar{ private char[] StackArray=new char[10]; private int top; public stackchar(); { top=-1; } public void push(char j) { StackArray [++top]=j; } public char pop() { return StackArray[top--]; } public boolean isEmpty(); { return top==-1; }} public stackuygulama{ public static void main(String[]args){ stackchar s=new stackchar(); char k; s.push('A'); s.push('B'); s.push('C'); k=s.pop(); System.out.println(s.isEmpty()); k=s.pop(); System.out.println(k); s.push('2'); k=s.pop(); System.out.println(k); }}} -------------------------------------------------------------------------------------- biraz uzun oldu ama kusura bakmayın bu stack in anlatıldıgı gün ben yoktum onu için biraz fransız kaldım olaya |
| | |
| | #2 (permalink) |
| Üye Üyelik Tarihi: 02/2007
Mesaj: 67
| ahmetsngr, Stack mantığında : Elinde bir kutu olduğunu düşün. Üç(sayı örnek olarak verilmiştir) tane elbisen(öğe manasında,sizin örneğinizdeki karakterleri de düşünebilirsiniz) olduğunu düşün. Elimizdeki bu elbiseleri kutuya yerleştirmemiz gerekiyor. Birinci elbiseden üçüncü elbiseye hepsini sırasıyla yerleştiriyoruz. Elimizde elbise yerleştirilmiş bir kutu oldu. Biz istediğimizde elbiseleri almamız gerekiyor. Elbiseleri çıkartmak istediğimizde son yerleştirilen elbise çıkar.Bu böyle ilk konulan elbisye kadar gider. Bu kadar basite indirgedim. Aslolan son giren ilk çıkar (LIFO = LAST IN FIRST OUT) mantığı bulunur stack yapısında. Bunun elinde kodu var. Kodda bunalra ek olarak stack boş mu değil mi kontrolü de yapılıyor. Kİ bu gerekli. psuh() ile yeni ekleme. pop() ile çıkarma işlemi yapılıyor.. Sanırım yeterli bir açıklama oldu. Selametle.. |
| | |
| | #3 (permalink) |
| Üye Üyelik Tarihi: 04/2008 Yer: kayseri
Mesaj: 45
|
hocam tşk ederim ama son olarak üstteki örnekten anladıgımı bi yazayım arasında yanlış bi şey varmı *10 luk bi dizimiz var *top değişkenimizi birer birer düşüren bi metodumuz var *2. methodda da eleman ekliyoruz birer birer ama dizinin içine bunu j die bi geğişkene atıyor *3.methodda da diziden tek tek eleman çıkarıyor ama orda bi return kullanılmış onu anlayamadım nie orda return le değeri geri döndürüyor *4. metodda da boolean la dizi boş mu dolumu ona bakılıyor ama ordaki returnuda anlamadım bide -1 dizinin 1 bölümünü demek demi?? şimdi geldik programa sırayla A,B,C yi ekliyor bundan sonrasını anlayamadım sınavda büyük ihtimalle bu soru çıkacak tam olarak bi çalışma mantıgını anlatırmısın şimdiden tşk ederim |
| | |
| | #4 (permalink) |
| Üye Üyelik Tarihi: 02/2007
Mesaj: 67
| ahmetsngr, Bazı şeyler kafanda şekillenmiş.. Hep derim böylesi başlangıçlarda böylesi küçük programlarda yapılması gereken derleyici olarak kendinizi görmektir. Bu hem program akışını bilmenize, hem de yapılan hataları bulmanıza yardımcı olur. main() kısmından başlayarak tek tek ne yaptığını düşün kodun. Değerleri tek tek kağıt kalemle elinle şemalara çizerek algoritmayı oluştur. Sonunda anlayacaksın her şeyi.. |
| | |
| | #5 (permalink) |
| Üye Üyelik Tarihi: 04/2008 Yer: kayseri
Mesaj: 45
|
hocam dediğini yaptım kendim derlemeye çalıştım ilk push la A,B,C yi ekliyor ondan sonra yıgıtın 2. elemanını yani A yı yıgıttan çıkarıyor sonra da çıkan elemanı ekranda görüntülüyor veya eleman çıktıktan sonraki yıgıtın son halini gösteriyor benim bu programda anlamadıgım k=s.pop; diyo sonra system.out.println (k); yı gösteriyor bu 2 işlemi 2 kere tekrarlıyor nedeni nedir???? |
| | |
| | #7 (permalink) |
| Üye Üyelik Tarihi: 02/2007
Mesaj: 67
| ahmetsngr, İlk önce A, B, C ' yi sırasıyla yığına attık. Sonra ilk pop() ile C ' yi , ikinci pop() ile B' yi aldık. Sonra push() ile 2'yi attık. Son giren ilk çıkarla çalıştığını evvelce belirttik. En son pop() ile girilen 2' yi tekrar aldık. Yığında en son A kaldı.. Sanırım anlaşıldı.. Selametle... |
| | |
![]() |
| Bookmarks |
| Seçenekler | |
| |
Benzer Konular | ||||
| Konu | Konuyu açana göre | Forum | Cevap | En Son Mesaj |
| for ve while döngüsü mantıgını cözemedim | detayxxx | PHP | 2 | 22/01/2008 18:25 |
| Class türetimlerinde Stack Over | deggial | ASP.NET / Silverlight / Moonlight | 2 | 21/12/2007 20:15 |
| flashta acemiye ders anlatacak olan varmı | cernobiL | Flash / Director / Swift 3D ... | 2 | 06/03/2006 14:47 |
| Javadan Aspye | caldera | ASP | 0 | 02/12/2005 05:07 |
| stack uygulaması | RaiST | C / C++ | 5 | 19/11/2002 22:00 |
| Reklamlar & Desteklenenler | |
| Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv | |