public static void Main()
        {
            Słownik <string, string> S = new Słownik <string, string>();

            S.Dodaj("smok", "skyrim");
            foreach (string K in S)
            {
                Console.WriteLine(K);
            }
        }
 public void Usuń(K usuwany_klucz)
 {
     if ((this.next == null) && (!(this.klucz.Equals(usuwany_klucz))))
     {
         throw new Exception("Error nr=1");
     }
     if ((this.klucz.Equals(usuwany_klucz)) && (this.prev == null) && (this.next == null))
     {
         throw new Exception("Error nr=2");
     }
     if (this.klucz.Equals(usuwany_klucz))
     {
         if (this.next != null)
         {
             this.next.prev = this.prev;
             Length--;
         }
         if (this.prev != null)
         {
             this.prev.next = null;
             Length--;
         }
         else
         {
             this.prev.next = this.next;
             this.next.prev = this.prev;
             Length--;
         }
     }
     else
     {
         if (this.prev != null)
         {
             this.prev.Usuń(usuwany_klucz);
         }
         if (this.next != null)
         {
             this.next.Usuń(usuwany_klucz);
         }
     }
 }
 public void Dodaj(K nowy_klucz, V nowa_wartość)
 {
     if (this.klucz.Equals(nowy_klucz))
     {
         wartość = nowa_wartość;
     }
     else
     {
         if (this.next == null)
         {
             klucz     = nowy_klucz;
             wartość   = nowa_wartość;
             this.next = new Słownik <K, V>();
             Length++;
         }
         else
         {
             this.next.Dodaj(nowy_klucz, nowa_wartość);
         }
     }
 }