İçeriğe atla
CodeItRaw
Hash

Ders 4/5

Bazı sorular ancak bütün listeyi gördükten sonra cevaplanır: "yalnızca bir kez geçen ilk eleman hangisi?" İlk elemana bakarken ileride tekrar edip etmeyeceğini bilemezsin.

count = {}
for v in values:
count[v] = count.get(v, 0) + 1
for i, v in enumerate(values):
if count[v] == 1:
return i
return -1
İlk geçiş sayar, ikinci geçiş listeyi kendi sırasıyla yeniden gezip sayıma sorar. İki geçiş yine de 2n okumadır; n × n değil.

İkinci geçişi sözlüğün üzerinde değil listenin üzerinde yapmak önemlidir: "ilk" kelimesi listedeki sırayı kasteder.

Görevler

Görevler sırayla açılır. Hepsini çözünce sonraki ders açılır.

Bu dersin görevleri, önceki dersler bitince açılır. Anlatımı şimdiden okuyabilirsin.

  1. 01

    Tek Kalan

    Fonksiyon

  2. 02

    Destek Kuyruğu

    Fonksiyon

  3. 03

    Ortak Elemanlar

    Kod Okuma · Big-O Oku

Sırayı beklemeden çözmek istersen bütün problemler kilitsiz açık: Problemler listesi