Menu
CoddyTech

Longest Common Subsequence

İki dizge alırsın: text1 ve text2. Bir dizgenin alt dizisi, harflerinin bazılarını özgün sıralarında tutup geri kalanları çıkarır; tutulan harflerin yan yana olması gerekmez. Her iki dizgenin de alt dizisi olan en uzun dizgenin uzunluğunu döndür; iki dizgede ortak harf yoksa 0 döndür.

Fonksiyon

longestCommonSubsequence(text1: string, text2: string) → integer
text1string
ilk dize
text2string
ikinci dize
Döndürürinteger
en uzun ortak alt dizinin uzunluğu

Kısıtlar

  • 1 ≤ text1.length ≤ 1000
  • 1 ≤ text2.length ≤ 1000
  • Her iki dize de yalnızca küçük İngilizce harfler içerir.

Örnekler

Girdi
text1 = "stone"text2 = "longest"
Çıktı
3
Açıklama
o, n, e her iki sözcükte de bu sırayla görünür, bu nedenle one uzunluğu 3 olan ortak bir alt dizidir. longest sözcüğünde s ve t harfleri sonda gelirken, stone sözcüğünde başta gelir; bu yüzden bunları kullanan ortak bir alt dizi yalnızca st olabilir ve bu daha kısadır.

lock iconGönderirken +19 gizli test

challenge icon

Ek soru

En uzun ortak alt dizinin uzunluğunu değil, kendisini döndürebilir misin?

Kodu sıfırla
def longestCommonSubsequence(text1, text2):
    # Kodu buraya yazın
Test durumları

Durum 1

Durum 2

Durum 3

Girdi

text1 = "stone"
text2 = "longest"

Beklenen

3