LeetCode algoritması probleminin temelini atmak için 16. günde, sipariş hakkında konuşmayı bitirdikten sonra, ilk siparişten bahsedelim

Algoritmalar hakkında çok karmaşık makaleler nasıl yazılır. Son olarak, yazmaya en basit seviyeden başlamanın daha iyi olacağını düşünüyorum. Başlangıçtan itibaren, yapay zeka, makine öğrenimi algoritmaları ve çok sayıda matematik ve optimizasyon bilgisi gibi bazı ağır ağırlıklara sahip olacağım. Sanırım çok bunaltıcı olacak. Bunu yapamayabilirim, doğru.

Her soruya iki dilde, bir statik dil ve bir dinamik dilde çözüm getirmeyi planlıyorum.

C dilini ve Python'u seçtim. Başlangıçta Java'yı düşündüm, ancak alan sınırlı. İlgileniyorsanız, kendiniz deneyin

LeetCode 589. Doğal Ağaç Ön Sipariş Geçişi

Ön sipariş geçişi ve sipariş sonrası geçiş temelde aynıdır ve fark temelde sıradır. Bir önceki makale olan "Temellerin Döşenmesi, LeetCode Algoritma Problemi 15. Gün, N-Ary Ağaçlarının Sıradan Geçişinden Sonra" makalesine bakmanızı ve bunları karşılaştırmanızı öneririm.Ağacın ön-sipariş ve son-sıra geçişi hemen hemen kontrol edilebilir.

Sorun Açıklaması:

Bir N-ary ağacı verildiğinde, düğümlerini önceki sırada geçiş yapmaya değer şekilde döndürün.

Lütfen yinelemeli olmayan bir uygulama yazın

Misal:

dönüş:.

C ++ dil uygulaması:

Bu sorunun bir C dili uygulaması sağlamasına gerek yoktur ve C kodunu gönderemiyorum. Bu yüzden uygulama dili olarak C ++ 'yı seçtim.

İlk olarak, LeetCode tarafından verilen ağaç düğümünün ilgili tanımı aşağıdaki gibidir:

Başlık elde etmek için yinelemeli olmayan bir yol gerektirse de, yine de bu arada yinelemeli bir şekilde de istiyorum.

1. Özyineleme yöntemi:

Özyineleme yöntemi çok basittir, sipariş sonrası geçiş koduyla hemen hemen aynıdır. Tek fark, ön sıralı geçişin önce düğümün değerini b vektörüne eklemek ve ardından alt düğümleri geçmek olmasıdır; sıra sonrası geçiş ise önce alt düğümleri geçmek ve sonra düğümün değerini vektör b'ye eklemektir. Sipariş sonrası geçişten farkı yalnızca sıradadır.

2. Yinelemesiz yasa :

Özyinelemesiz ve sipariş sonrası geçiş kodu benzerdir. Yığın da kullanılır. Sipariş sonrası geçişten iki fark vardır:

  • Ön sipariş geçişinde, düğümün sözcüğü her zaman vektör b'ye eklenir.
  • Ön sipariş geçişinde, alt düğümler sağdan sola geçilir.
  • Python dilinin uygulanması:

    Python'un uygulaması temelde C ++ 'ın özyinelemeli ve özyinelemeli olmayan yöntemler uygulamasıyla aynıdır. Tek fark dilin kendisinde yatıyor.

    1. Özyineleme yöntemi:

    2. Yinelemeli olmayan yöntem:

    Burada, yığınlara alt düğümler eklemek için döngüler yerine dilimler kullanıyorum.

    Alman Aslan sertifikası, çift ekranlı çift parmak izi! Nubia X sürümü: 3299 yuan'dan başlıyor
    önceki
    Seyirci bir keresinde onu gördüklerinde hemen televizyonu kapatmakla tehdit etmişti. Beş yıldır çıkış yapan Cai Sibei hala sinir bozucu mu?
    Sonraki
    Güçlü oyuncular kısa video içerik savaşları oyununa giriyor: Bu görsel yıldız oyunu nasıl oynanır?
    Hayalet hayvan Nickelodeon, yeni bir şapka serisi oluşturmak için New Era ile işbirliği yaptı! Neden duygular uğruna başlamıyorsun?
    Meizu 11.11 karnaval satın alma 1111 yuan hediye, 1298 yuan Note8 resmi olarak satışta
    Bu Cumartesi gününden itibaren Jinyu Caddesi ile Longjian Yolu'nun kesiştiği noktada trafik kısıtlamaları uygulanacak
    Haberler Tsinghua Üniversitesi süper hesaplama ekibi, SC 2018 şampiyonasını kazandı ve üç büyük uluslararası üniversite öğrencisi süper bilgisayar yarışmasının şampiyonluğunu kazandı
    Zeng Zhiwei Japonya'da bir araba kazasına karıştı ve arabadaki kadın refakatçi kimliği ortaya çıktı Çevresinde kadın sıkıntısı yok mu?
    Changan CS15 EV resmi olarak piyasaya sürüldü: sübvansiyonlardan sonra 119.000 satış
    PALACE bu hafta satışta ve hayranlar çok heyecanlı! Bu üst vücut etkilerini nasıl değerlendirirsiniz?
    Yu Yongfu'nun ağzındaki "kardeş" Yang Weidong ile röportaj: TPG'm hedefimden düşük
    Eşsiz kız arkadaş Tang Shiyong yeni bir ilişkiye mi maruz kaldı? O, 100 milyonu aşan net serveti ile Yao Ziling'in eski aşkı!
    Heavy | "Snipe" SAIC ortak girişimi Audi: FAW kurtarma ekiplerini taşımak için Pekin'e koşuyor, bayiler Mart ayında müzakerelere başlamayı planlıyor
    Üç kameralı arka kayar kapak tasarımı ile Honor Magic 2 kimlik fotoğrafı duyuruldu
    To Top