Lista wiązana

0

Proszę chętnych o rozpiskę dokładną klasy Link oraz LinkList wraz z konstruktorem.

Co oznacza w konstruktorze info=id



public class Link {
	public int  info;	//dane
	public Link next;
	
	public Link(int id){
		info = id;
		next = null;
	}
}

class LinkList {
	public Link first;
	public LinkList() {
		first = null;   //lista nie ma elementów
	}
	
	public int wyszukaj_wLiscie (int szukana) {
		int znalezionych = 0;  //ilość znalezionych wyników
		Link lista = first;		//zaczynamy szukanie od 1 lista zawsze wskazuje na aktualnie sprawdzanego
		if(lista != null){		//sprawdzenie czy ten pierwszy istnieje
			while(true){		
				if(lista.info == szukana) //sprawdzenie czy aktualnie sprawdzany ma szukaną wartość
					znalezionych++;       // zwiększamy liczbe znalezionych
				if(lista.next == null)		// sprawdzamy czy istnieje następny
					break;
				lista=lista.next;			//przesuwamy się na następnego
			}
		}
		
		return znalezionych;
	}













0

Widzę, że ciężko jest otworzyć jakiś kurs czy książkę, żeby przeczytać jak buduje się obiekty.

public Link(int id){
    info = id;
    next = null;
}

Zmienna id przekazywana do konstruktora jest przypisywana do zmiennej info w klasie Link. Nic więcej. Co prawda ta klasa hermetyzacji nie trzyma i jest niepełna jeśli chodzi o budowanie struktury węzła w liście.

Klasa LinkList odpowiada za poruszanie się po węzłach listy i wykonywaniu na nich jakiś czynności. Aby poprawnie przeszukiwać listę, należałoby to zrobić tak:

while(lista.next != null){
    if(lista.info == szukana)
         ++znalezionych;
    lista = lista.next;
}

Zamiast przylatywać z tym na forum, zapoznaj się z podstawami obiektowości oraz listą, jako strukturą danych. Szybciej stamtąd się dowiesz wszystkiego, niż czekając na odpowiedź na forum.

Btw. Chyba do Newbie z tym trzeba ;).

1 użytkowników online, w tym zalogowanych: 0, gości: 1