In [93]:
from math import floor
def findSubsequence(s):
print(s)
result, n = [], len(s)
if n > 1:
mid = floor(n/2)
result = result + findSubsequence(s[:mid])
result = result + findSubsequence(s[mid:])
result.append(s[:mid]+s[mid+1:])
result.append(s)
return result
In [108]:
def findSub(s):
n, result, result2 = len(s), list(s), []
#for i in range(1,len(snapshot)):
# result.append(snapshot[i-1]+snapshot[i])
for i in range(n):
for j in range(i+1,n):
result2.append(s[i]+s[j])
result3 = []
for i in range(len(result2)):
for j in range(i+1,len(result2)):
result3.append(result2[i]+result2[j])
print(result, result2, result3)
return result
In [109]:
#a, b = "ABC", "BAC"
a = "ACCGGTCGAGTGCGCGGAAGCCGGCCGAA"
B = "GTCGTTCGGAATGCCGTTGCTCTGTAAA"
LONGEST = "GTCGTCGGAAGCCGGCCGAA"
result = bruteForceLCS(a,b)
#print (LONGEST in result)
#print(result)
#print(result == LONGEST, result)
print(findSub("ABCD"))
#print(subs)
In [ ]: