python difflib 编辑距离_LeetCode--072--编辑距离(python)
给定两个单词 word1 和 word2,计算出将 word1 转换成 word2 所使用的最少操作数 。
你可以对一个单词进行如下三种操作:
插入一个字符
删除一个字符
替换一个字符
示例 1:
输入: word1 = "horse", word2 = "ros"
输出: 3
解释:
horse -> rorse (将 'h' 替换为 'r')
rorse -> rose (删除 'r')
rose -> ros (删除 'e')
示例 2:
输入: word1 = "intention", word2 = "execution"
输出: 5
解释:
intention -> inention (删除 't')
inention -> enention (将 'i' 替换为 'e')
enention -> exention (将 'n' 替换为 'x')
exention -> exection (将 'n' 替换为 'c')
exection -> execution (插入 'u')
1 classSolution:2 def minDistance(self, string1: str, string2: str) ->int:3 m =len(string1)4 n =len(string2)5 f = [[None for _ in range(n+1)] for i in range(m+1)]6 for i in range (m+1):7 for j in range(n+1):8 if i==0:9 f[i][j]=j10 continue
11 if j ==0:12 f[i][j] =i13 continue
14 #insert delete replace
15 if string1[i-1] == string2[j-1]:16 f[i][j]=f[i-1][j-1]17 else:18 f[i][j] = min(f[i-1][j],f[i][j-1],f[i-1][j-1]) + 1
19 return f[-1][-1]
参考 b站
python difflib 编辑距离_LeetCode--072--编辑距离(python)相关推荐
- python difflib详解_在 Python 中使用 difflib 比较字符串
用 Shell 写程序还是不方便,今天用 Python 把昨天写的 Bash 脚本重写了,遇到两个关于字符串的个小问题: 1.做个类似 diff 工具的效果,大致指出两个字符串的不同之处,这个可以用 ...
- python实现平衡二叉树_LeetCode 110. 平衡二叉树 | Python
# 110. 平衡二叉树 --- 题目来源:力扣(LeetCode)[https://leetcode-cn.com/problems/balanced-binary-tree](https://le ...
- python常用标准库有哪些-Python 200个标准库汇总
文本 string:通用字符串操作 re:正则表达式操作 difflib:差异计算工具 textwrap:文本填充 unicodedata:Unicode字符数据库 stringprep:互联网字符串 ...
- Python库大全(涵盖了Python应用的方方面面),建议收藏留用!
学Python,想必大家都是从爬虫开始的吧.毕竟网上类似的资源很丰富,开源项目也非常多. Python学习网络爬虫主要分3个大的版块:抓取,分析,存储 当我们在浏览器中输入一个url后回车,后台会发生 ...
- python统计行号_用Python实现两个文件的不同行的编号
title: 文件不同行 tags: python,IO,dict 比较两个文件在哪些行内容不同,返回这些行的编号,行号编号从1开始. 定义统计文件行数的函数 # 统计文件个数def statLine ...
- python从入门到实践源代码-Python从入门到项目实践 PDF 全彩带源码版
给大家带来的一篇关于Python相关的电子书资源,介绍了关于Python.入门.项目实践方面的内容,本书是由吉林大学出版社出版,格式为PDF,资源大小2.1 GB,admin编写,目前豆瓣.亚马逊.当 ...
- python项目实例源码哪里下载-Python从入门到项目实践 PDF 全彩带源码版
给大家带来的一篇关于Python相关的电子书资源,介绍了关于Python.入门.项目实践方面的内容,本书是由吉林大学出版社出版,格式为PDF,资源大小2.1 GB,admin编写,目前豆瓣.亚马逊.当 ...
- python青少儿编程教程-青少年PYTHON编程入门
* 快速入门 图文并茂,理论与实践相结合,引导读者快速入门 * 轻松上手 有趣的文字描述,细致的流程讲解,帮助读者学习程序轻松上手 * 熟练应用 精炼的章节回顾,经典的自我评价,帮助读者提高学习成效 ...
- python 等号报错_Python学习----Python基础
Python基础 一.数据类型和变量 1.在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量. 例如: a =520# a是整数prin ...
- python嵩天课堂笔记_[Python机器学习]强化学习笔记(嵩天礼欣老师mooc第三周)
[Python机器学习]强化学习笔记(嵩天礼欣老师mooc第三周) [Python机器学习]强化学习笔记(嵩天礼欣老师mooc第三周) 目录 强化学习 定义 马尔科夫决策过程 基本元素 值函数 最优值 ...
最新文章
- L1-009. N个数求和
- HttpHand和HttpModule的详细解释,包括Asp.Net对Http请求的处理流程。
- 击败安全系统系列文章之突破卡巴6
- 6. Qt 信号与信号槽(3)-QMetaObject
- 一些Java面试技巧分享,你不能错过!
- 防止HALCON刷新图像窗口控件闪烁
- oracle11g关闭库,Oracle11g中SYS连接阻止关闭数据库
- c语言串口控制单片机,利用USART实现单片机与串口通信[C语言]
- mysql 6位随机数_MySQL生成固定位数的随机数
- 彻头彻尾理解 ConcurrentHashMap
- ASA上的NAT配置及互联网接入(动态NAT、动态PAT、静态NAT、静态PAT以及NAT豁免、使用思科TFTP服务器上传ASDM模块)
- 计算机不连接网络打印机驱动程序,电脑无法自动连接局域网打印机驱动程序怎么处理...
- 计算机二级成绩划分标准,计算机二级成绩划分标准
- Promise 是什么?
- 闲人博上介绍R语言的一篇好文章
- dsf5.0没登录显示登录弹框
- 牛客-小a与星际探索
- python 地址簿
- 黑客‘劫持’了一颗卫星,用它直播黑客大会和放电影,并且还完全合法?
- Oracle-09:聚合函数
热门文章
- 【语音处理】基于matlab GUI音乐多次回声图谱显示【含Matlab源码 1733期】
- 【滤波器】基于matlab GUI高通+低通+带通+带阻FIR滤波器设计【含Matlab源码 699期】
- 【TSP】基于matlab遗传算法求解30城市旅行商问题【含Matlab源码 135期】
- 技术专家(ai/大数据)_``我们淹没在数据中'':在专家和AI时代如何思考自己
- word2vec字向量_Anything2Vec:将Reddit映射到向量空间
- 360浏览器:一键恢复不小心关闭的网页
- java编程 数组的中位数中枢_Java算法题1:找出两个有序数组的中位数?
- java构造器基本语法_Java语言中的定义变量、构造函数
- 浅析ServiceMesh Istio
- 【引向】全栈开发工程师之路