Resimler gönderiler için kullanışlıdır. Ancak mümkün olduğunca az ve / veya küçük resimler kullanmak gerekir.
Bilgisayardaki bir hata mesajı veya kodu resim olarak eklemek yerine kendisini
kopyalayıp yapıştırın.
Resimler gönderiler için kullanışlıdır. Ancak mümkün olduğunca az ve / veya küçük resimler kullanmak gerekir.
Bilgisayardaki bir hata mesajı veya kodu resim olarak eklemek yerine kendisini
kopyalayıp yapıştırın.
0
Verilen tek yönlü bağlı listeden yeni bir bağlı tek yönlü bağlı liste oluşturma
Amacım kendisine verilen liste ve iki adet integer indisle verilen listeden bu indisler arasındaki (indisler dahil )bağlı liste elemanlarından yeni bir bağlı liste oluşturmaktı ama yanlış sonuç alıyorum
public class Eleman<T>{
T deger;
Eleman ileri;
public Eleman(T deger) {
this.deger = deger;
this.ileri = null;
}
}
public class BagliListe {
Eleman ilk;
Eleman son;
public BagliListe() {
this.ilk = null;
this.son = null;
}
void basaEkle(Eleman eklenen){
if (son==null)
son=eklenen;
eklenen.ileri=ilk;
ilk=eklenen;
}
void arayaEkle(Eleman eklenen, Eleman once){
eklenen.ileri=once.ileri;
once.ileri=eklenen;
}
void sonaEkle(Eleman eklenen){
if (ilk==null)
ilk=eklenen;
else
son.ileri=eklenen;
son=eklenen;
}
void bastanSil(){
ilk=ilk.ileri;
if (ilk==null)
son=null;
}
void sondanSil(){
Eleman yedek=ilk, once;
once=null;
while (yedek!=son){
once=yedek;
yedek=yedek.ileri;
}
if (once==null)
ilk=null;
else
once.ileri=null;
son=once;
}
void aradanSil(Eleman silinen){
Eleman yedek=ilk, once;
once=null;
while (yedek!=silinen){
once=yedek;
yedek=yedek.ileri;
}
once.ileri=silinen.ileri;
}
void listeYazdir(){
Eleman yedek=ilk;
while (yedek!=null){
System.out.print(" "+yedek.deger);
yedek=yedek.ileri;
}
}
<T> Eleman ara(T aranan){
Eleman yedek=ilk;
while (yedek!=null){
if (yedek.deger==aranan)
return yedek;
yedek=yedek.ileri;
}
return null;
}
int elemanSayısı(){
int sayac=0;
Eleman yedek=ilk;
while (yedek!=null){
yedek=yedek.ileri;
sayac++;
}
return sayac;
}
Eleman indisElemanAra(int indis){
Eleman yedek=ilk;
if (ilk==null)
return null;
int sayac=0;
while (sayac<indis && yedek!=null){
yedek=yedek.ileri;
sayac++;
}
return yedek;
}
public static BagliListe altKumeOlustur(BagliListe liste1,int bas, int son) {
//
Eleman b=liste1.indisElemanAra(bas);
Eleman s=liste1.indisElemanAra(son);
//alt kümenin tutulacağı bağlı liste oluşturuluyor
BagliListe liste_2=new BagliListe();
Eleman yedek=b;
Eleman e;
while (yedek!=s){
e=new Eleman(yedek.deger);
liste_2.basaEkle(e);
yedek=yedek.ileri;
}
return liste_2;
}
}
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
//Liste oluşturuluyor
BagliListe liste_1=new BagliListe();
//Elemanlara değerleri atanıyor ve listeye ekleniyor
Eleman e1=new Eleman(5.2);
liste_1.basaEkle(e1);
Eleman e2=new Eleman(9);
liste_1.basaEkle(e2);
Eleman e3=new Eleman(90);
liste_1.basaEkle(e3);
Eleman e4=new Eleman(100);
liste_1.basaEkle(e4);
Eleman e5=new Eleman(55);
liste_1.basaEkle(e5);
Eleman e6=new Eleman(5);
liste_1.basaEkle(e6);
//istenilen altkümenin özelliklerinin okunabilmesi
//için Scanner sınıfından nesne yaratılıyor
Scanner oku=new Scanner(System.in);
//istenilen altkümenin özelliklerinin tutulacağı
//değişkenler tanımlanıyor
int kumeBas=0, kumeSon=0;
//özellikler alınıyor
System.out.print("Alt kume baslangici: ");
kumeBas=oku.nextInt();
System.out.print("Alt kume sonu: ");
kumeSon=oku.nextInt();
//alt kümenin oluşturulması için değreler 'altKumeOlustur'
//metoduna gönderiliyor ve oluşan yeni alt küme ekrana yazdırılıyor
System.out.print("Alt kümeniz: ");
liste_1.altKumeOlustur(liste_1, kumeBas, kumeSon).listeYazdir();
}
}
Alt kume baslangici: 3
Alt kume sonu: 5
Alt kümeniz: 9 90
Soran: 08.04.21 17:59
yolda_41p
5ü
cevapsitesi.com'a katkınızdan dolayı teşekkür ederiz. Cevap yazarken lütfen şunlara dikkat edin:
Cevabınız açık ve net olmalıdır. Varsa alıntılar, bağlantılar, resim veya program kodu eklemelisiniz.
Eğer soru hakkında görüş bildirecekseniz veya cevap haricinde başka bir şey söylemek istiyorsanız yorum olarak yazın.
Tartışma çıkaracak cevaplardan kaçının, hitabınıza dikkat edin, "Kardeşim", "Arkadaşım" gibi ifadeler kullanmayın.
Eleştirmeyin. Sadece bilginizi gösterin ve fikrinizi söyleyin.
Büyük harf kullanmaktan ve cümle kurmaktan çekinmeyin. :)
Buraya yeni bir soru yazmayın, "benim de şöyle bir sorunum var" gibi eklemeler yapmayın. Sorunuz varsa yeni soru ekleyin.
ÜSLUP
ve SAYGI çok önemlidir. İnsanlar cevabınızdan çok üslubunuza dikkat ederler.
Cevabı, bir cevabın veya sorunun yorumu olarak dönüştürmek için ilgili cevabı veya soruyu tıklayın. [
İptal ]