Foundation LeetCode Algoritma Problemi 30. Gün: En az kullanılan kelimeler nasıl bulunur?

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 884. İki cümlede en az kullanılan kelimeleri bulun (İki Cümlede Yaygın Olmayan Sözcükler)

Sorun Açıklaması:

A ve B olmak üzere iki cümle veriyoruz. (Cümle, boşluklarla ayrılmış bir dizi kelimedir. Her kelime yalnızca küçük harf içerir.)

Bir sözcük bir cümlede yalnızca bir kez geçiyorsa ve diğer cümlede görünmüyorsa, sözcük yaygın olarak kullanılmaz.

Tüm yaygın olmayan kelimelerin bir listesini döndür.

Listeye herhangi bir sırayla dönebilirsiniz.

Not:

  • 0 < = A. uzunluk < = 200
  • 0 < = B. uzunluk < = 200
  • Hem A hem de B yalnızca boşluk ve küçük harf içerir.
  • Misal:

    C dili uygulaması:

    İlk olarak, iki dizgiyi tek tek kelimelere ayırmalı ve bir dizide saklamalıyız. Dizinin iki dizgiyi bölmenin sonucunu sakladığını unutmayın, bu nedenle uzunluğuna dikkat edin.

    Ardından, yalnızca bir kez görünen kelimeleri bulmak için diziyi yineleyin.

    kod aşağıdaki gibi gösterilir:

    Satır 10 ~ 13, A ve B'yi _A ve _B olarak kopyalayın, çünkü prensipte girdi dizesini değiştirmek istemiyorum.

    Satır 14 ~ 18, _A ve _B arasında bölünmüş kelimeleri saklamak için 400 uzunluğunda bir dize dizisi kelimesi tanımlayın ve ardından _A ve _B'yi bölmek için özel bölme () işlevini çağırın ve split () kullanılır Bölme işlemini tamamlamak için kütüphane işlevi strtok () kullanılır. Strtok () kullanma yöntemine dikkat edin. İlk parametre, ilk kez çağrıldığında bir dize adresi olmalı ve daha sonra tekrar çağrıldığında ilk parametre NULL olmalıdır.

    23. satırdan 36. satıra kadar, yalnızca bir kez görünen kelimeleri bulmak ve bunları geri dönüş listesinde saklamak için dizi kelimelerini çaprazlayın.

    32 ~ 33 satırlarına dikkat edin, çünkü kelimelerdeki dizeler _A ve _B'den gelir ve _A ve _B, uncommonFromSentences () işlevinin yığın alanında yer alır ve arayan kişiye geri gönderilemez, bu nedenle burada bir öbeği yeniden tahsis etmemiz gerekir Döndürülecek dizeyi saklamak için hafıza alanı.

    Python dilinin uygulanması:

    Sayma ile ilgilidir, bu nedenle Counter ile uygulanması nispeten basit olacaktır.

    Önce A ve B'yi birleştirin ve ardından her kelimenin görünme sayısını sayabilen bir Sayaç oluşturmak için bölün.

    Son olarak, yalnızca bir kez görünen kelimeler döndürülür.

    Changan Ruicheng CC, orta büyüklükte bir coupe tarzı otomobil olan Aralık ayında piyasaya sürülebilir
    önceki
    2019 İnternet okulu işe alım maaşı açığa çıktı, ne kadar alabileceğinizi görün!
    Sonraki
    Yıldönümünü ve sonsuz arayışını unutarak, o kadar çok ölüme neden oldu, Yuan Yuyi onu neden hala seviyor?
    Sprint! 5G cep telefonları parmaklarınızın ucunda
    Porsche Macan Turbo özel sürümü daha hızlı ve daha kişiselleştirilmiş
    Tayvan'ın küçük bir süt köpeğiyle evlenmek için bir ev satın aldığı ve 10 yıllık gençliğini Fang Lishen için feda ettiği söyleniyor. Nihayet doğru kişiyi buldu.
    Yeni 20.000'den fazla karakter, 10'dan fazla şirket katıldı, "2018 Akıllı Sürüş Çipi Sektörü Araştırma Raporu" satışa çıktı!
    2018'in en güçlü makine kralı olan Mate20 serisi bunu nasıl başardı?
    Size bir soru sorun: Bir araba lastik onarımından sonra yüksek hızda çalışabilir mi?
    Beliniz dik olarak "kambur": küçük bir evde yaşayın ve özel bir arabada araba sürün
    Wu Ruoxi, Ju Ziqiao'yu deniz köpeği alkışlarıyla hicret mi etti? Bir kız kardeş arasındaki anlaşmazlık, Hong Kong müzik sahnesinin teması olmamalı
    Yüzeydeki en güçlü kameralı telefon: Huawei Mate20 Pro önerilir
    "Duyuru" nun resmi duyurusu özel tiyatroları sıkı bir şekilde kontrol ediyor. Bu, Çin filmlerinin gişesini 100 milyara ulaştırabilir mi?
    Bu yol, buz kentindeki ilk ölümcül yol olduHarbin trafik polisi 2016 yılında ölümcül yol bölümlerinin sıralamasını açıkladı.
    To Top