Loading

摘要: 计算两个数的最大公约数:辗转相除法(欧几里得算法)。 gcd(a, b) = gcd(b, a mod b) def gcd(a, b): if b == 0: return a else: return gcd(b, a % b) # print(gcd(12, 120)) class Fract 阅读全文
posted @ 2021-08-11 16:31 climber_dzw 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 子序列: 一个序列的子序列是该序列删除若干个元素后得到的序列。例如“ACBD"和”BDF“都是”ABCDFEG“的子序列 最长公共子序列: 给定两个序列X,Y,求X和Y长度最长的公共子序列。 例如,”ABBCBDE“ "DBBCDB" 最长子序列为 ”BBCD“ def lcs_lenth(x, y 阅读全文
posted @ 2021-08-11 15:44 climber_dzw 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 从斐波那契数列看动态规划 斐波那契数列:f(n )= f(n-1) + f(n-2) 分别用递归和非递归的方法来求解斐波那契数列的第n项。 def fabnacci(n): if n == 1 or n == 2: return 1 else: return fabnacci(n - 1) + fa 阅读全文
posted @ 2021-08-11 10:41 climber_dzw 阅读(42) 评论(0) 推荐(0) 编辑