kullanımdan kaldırmak

Verimli birleştirme işlemlerini destekleyen ve tanımlanmış bir geçiş sırası olan özel bir veri yapısı. Genellikle kural ve yönlerdeki geçişli bağımlılıklardan veri toplamak için kullanılır. Daha fazla bilgiyi burada bulabilirsiniz.

Bir alt kümenin öğeleri karma oluşturma işlemi uygulanabilir ve aynı türde olmalıdır (yerleşik tür(x) işlevi tarafından tanımlandığı gibi), ancak alt kümeler sadece karma kümeleri değildir ve hızlı üyelik testlerini desteklemez. Genel küme veri türüne ihtiyacınız varsa tüm tuşların True ile eşlendiği bir sözlük kullanarak veri türünü simüle edebilirsiniz.

Derinlikler sabittir. Bunlar, kurucu işlevleri kullanılarak oluşturulmalı ve transitive bağımsız değişkeni aracılığıyla diğer altyapılarla birleştirilmeli veya artırılmalıdır.

order parametresi, kaldırma değerini yinelenebilir bir biçime dönüştürmek için yapılan geçiş türünü belirler. Olası dört değer vardır:

  • "default" (eski adıyla "stable"): Sıralama belirtilmemiştir (ancak belirleyicidir).
  • "postorder" (eski adıyla "compile"): Soldan sağa doğru sıralama. Bu işlem, ileride en solda olan tüm çocukları, ardından en solda bulunan doğrudan öğeleri yinelemeli olarak aktarır.
  • "preorder" (eski adıyla "naive_link"): Soldan sağa ön sıralama. Bu işlem, doğrudan öğeleri en solda olacak şekilde ve daha sonra, yine en sola doğru olan alt öğeleri katlar.
  • "topological" (eski adıyla "link"): Kökten yapraklara doğru topolojik sıralama. Soldan sağa garanti verilmez.

İki alt küme yalnızca her iki alt kümenin sırası aynıysa veya birinin sırası "default" ise birleştirilebilir. İkinci durumda, sonuçta ortaya çıkan depset sırası, diğerinin sırası ile aynı olur.

Derin kümeler yinelenen değerler içerebilir ancak bunlar yinelenirken (to_list() kullanılarak) atlanır. Kopyalar, sıralama semantiğine müdahale edebilir.

Üyeler

to_list

list depset.to_list()

Alt kümenin geçiş sırasında, öğeler listesini yinelemeler olmadan döndürür. Alt kümesine birden çok kez eklenen öğeler için sıranın belirtilmemiş (ancak deterministik) olduğunu unutmayın. "default" sıralı alt kümeleri ve sırası, üst öğedekinden farklı olan alt öğelerin öğeleri için de sıra belirtilmemiştir. Liste bir kopyadır. Listeyi değiştirmek, erişimi olumsuz yönde etkilemez. Bunun tersi de geçerlidir.