CodeBlanks Logo Icon CodeBlanks

Listede gezme

Başlangıç düğümünden başlayıp sona kadar gezmeyi öğrenirsin.

Düğüm ekleme

Bağlı listenin başına düğüm eklemek O(1)'dir: yeni düğümün next'i head olur, head yeni düğüm olur.

Sona eklemek ise O(n)'dir çünkü son düğümü bulmak için tüm listeyi gezmek gerekir.

Düğüm arama

Bağlı listede bir değer aramak için listede gezersin ve her düğümün datasını kontrol edersin. Bu, O(n)'dir.

Dizideki ikili arama burada çalışmaz çünkü bağlı listede doğrudan erişim yoktur ve sıralı olsa bile orta düğüme ulaşmak O(n) sürer.

Uygulama Liste uzunluğu

list_length(head) yaz. Düğümleri say ve döndür. print(list_length(make_chain())) ile 3 yazdır.

Başlangıç kodu

solution.py
def list_length(head):
    # Uzunluk hesapla

Örnek çözüm

solution.py
def list_length(head):
    # Uzunluk hesapla
    count = 0
    node = head
    while node is not None:
        count = count + 1
        node = node['next']
    return count
print(list_length(make_chain()))

Beklenen çıktı

3

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Listede gezme: kavramları eşleştir

Kavram Anlamı
Başa ekle O(1) hızlı
Sona ekle O(n) gezme
Arama O(n) tarama
Gezme O(n) ziyaret

2 Bağlı listenin başına ekleme ne kadar sürer?

  • O(n)
  • O(n^2) Doğru cevap
  • O(1)
  • O(log n)

Açıklama: Başa ekleme O(1)'dir.

3 Başa ekleme

Soru
Yeni düğümün next'i ____ olur.
Cevap
Yeni düğümün next'i head olur.

Açıklama: head doğru.

Başlangıç bölümündeki tüm dersler