Java Çift yönlü bağlı liste ( Double Linked List )

package veriyapıları;

public class ciftyonluBagliListe {

	Eleman2 bas,son;
	
	public ciftyonluBagliListe() {
		bas=null;
		son=null;
	}
	
	
	void basaekle(Eleman2 yeni) {
	if(bas==null) {
		bas=yeni;
		son=yeni;
	}	else {
		bas.geri=yeni;
		yeni.ileri=bas;
		bas=yeni;
		
		
	}
		
		
		
	}
	
	void arayaEkle(Eleman2 yeni,int x) {
		
		if(bas==null) {
			bas=yeni;
			son=yeni;
		}else {
			
			Eleman2 tmp = bas;
			
			while(tmp !=null) {
				if(tmp.icerik==x)break;
				else tmp=tmp.ileri;
					
				
				
			}
			
			yeni.ileri=tmp.ileri;
			tmp.ileri.geri=yeni;
			tmp.ileri=yeni;
			yeni.geri=tmp;
			
			
			
			
			
			
		}
		
		
		
		
		
	}
	
	
	
	void yazdir() {
		Eleman2 tmp =bas;
		
		while(tmp!=null) {
			System.out.print(tmp.icerik+" ");
			tmp=tmp.ileri;
			
		}
		
		
	}
	
	void sonaEkle(Eleman2 yeni) {
		if(bas==null) {
			bas=yeni;
			son=yeni;
			
			
			
		}else {
			son.ileri=yeni;
			yeni.geri=son;
			son=yeni;
			
			
		}
	}
	
	
	
}

class Eleman2{
	Eleman2 ileri,geri;
	int icerik;
	
	Eleman2(int icerik){
		this.icerik=icerik;
		ileri=null;
		geri=null;
		
	}
	
	
	
}

 

Şekille gösterim;

 

Yorumlar

Bu gönderi için yorum yapılmadı.