 สร้างอัลกอริทึมเพื่อค้นหาสตริงย่อยที่ยาวที่สุดของสองสตริง
def longest_common_substring(str1, str2): n1 = len(str1) n2 = len(str2) LCSuff = [[0 สำหรับ i ในช่วง (n2+1)] สำหรับ j ในช่วง (n1+1)] res = "" # ในการจัดเก็บผลลัพธ์ lenght = 0 # ในการจัดเก็บความยาวของผลลัพธ์ # โดยสร้าง LCSuff[][] ในลักษณะจากล่างขึ้นบน สำหรับ i ในช่วง (n1+1): สำหรับ j ในช่วง (n2+1): ถ้า (i == 0 หรือ j == 0): LCSuff[i][j] = 0 elif (str1[i-1] == str2[j-1]): LCSuff[i][j] = LCSuff[i-1 ][j-1] + 1 ถ้า (ความยาว < LCSuff[i][j]): lenght = LCSuff[i][j] res = str1[i-lenght: i] else: LCSuff[i][j] = 0 คืนความละเอียด