国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院

首頁 > 編程 > Python > 正文

python求解數組中兩個字符串的最小距離

2020-02-15 23:04:03
字體:
來源:轉載
供稿:網友

題目:

給定一個數組 strs,其中的數據都是字符串,給定兩個字符串 str1,str2。如果這兩個字符串都在 strs數組中,就返回它們之間的最小距離;如果其中任何一個不在里面,則返回 -1;如果兩個字符串相等,則返回 0。

例如:給定[‘*','3','*','5','10','9','7','1','*'],再給定兩個字符串'* ‘和'9',通過函數求得返回值 3。

分析:有兩種方法

方法1:

遍歷數組 strs,分別記錄兩個 str1 和 str2 的位置。求得最小的一個距離數字。這樣做時間復雜度為 o(n^2)。

方法2: 

如果查詢的次數非常多,為了提高查詢的效率,構造Hash表,把每次查詢的時間復雜度下降到 o(1)。 
Python 的內置 dict 類型就是哈希表,實現方法也是hash 表,其查詢的時間復雜度就是 o(1)。哈希表的構造也分很多種: 
比如,構造 Hash 表,key值是strs中的每一個字符串,value值是一個hash表,里面存放著該字符串到其它字符串的最小距離。 
寫成代碼就是:hash_table = {“*”:{“3”:1, “5”:1, “10”:2, “9”:3, “7”:2, “1”:1}} 
當然這種方法的空間復雜度是 o(n^2)

代碼: 

 def min_distance_1(strs, str1, str2):  '''  數組中兩個字符串的最小距離,這是方法1,時間復雜度 o(n^2)  :param strs: 給定的數組中存放有多個字符串  :param str1: 第一個字符串  :param str2: 第二個字符串  :return: 如果其中給定的一個字符串不在數組 strs 中,那么返回-1,否則返回兩個字符串之間的最小間距  '''  if str1 not in strs or str2 not in strs:   return -1  if str1 == str2:   return 0  dist, min = 1, len(strs)  pos1, pos2 = 0, len(strs)  for i in xrange(0, len(strs)):   if str1 == strs[i]:    pos1 = i    for j in xrange(0, len(strs)):     if str2 == strs[j]:      pos2 = j     dist = abs(pos1 - pos2)     if dist < min:      min = dist  return min def min_distance_2(strs, str1, str2):  '''  數組中兩個字符串的最小距離,這是方法2,如果查詢的次數非常多,把每次查詢的時間復雜度下降到 o(1)。  Python 的內置 dict 類型就是哈希表,實現方法也是hash 表,其查詢的時間復雜度就是 o(1)。哈希表的構造也分很多種:  比如,構造 Hash 表,key值是strs中的每一個字符串,value值是一個hash表,里面存放著該字符串到其它字符串的最小距離。   寫成代碼就是:hash_table = {"*":{"3":1, "5":1, "10":2, "9":3, "7":2, "1":1}}  當然這種方法的空間復雜度是 o(n^2)  :param strs: 給定的數組中存放有多個字符串['*','3','*','5','10','9','7','1','*']  :param str1: 第一個字符串, '*'  :param str2: 第二個字符串, '9'  :return: 如果其中給定的一個字符串不在數組 strs 中,那么返回-1,否則返回兩個字符串之間的最小間距  '''  if str1 not in strs or str2 not in strs:   return -1  if str1 == str2:   return 0  def create_hash(strs): # 創建 hash 的過程并不在查詢里   strs_set = list(set(strs))   dist_hash = {}   for i in xrange(0, len(strs_set)):    temp = {}    for j in xrange(0, len(strs_set)):     if strs_set[i] != strs_set[j]:      dist = min_distance_1(strs, strs_set[i], strs_set[j])      temp[strs_set[j]] = dist    dist_hash[strs_set[i]] = temp   return dist_hash  return create_hash(strs)[str1][str2]            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产激情自拍_国产9色视频_丁香花在线电影小说观看 _久久久久国产精品嫩草影院
中文字幕色视频| 四虎成年永久免费网站| 轻轻色免费在线视频| 亚洲xxxxxx| 麻豆网站在线免费观看| 国产在线观看网站| √天堂资源地址在线官网| 国产欧美日韩精品综合| 在线观看中文字幕的网站| www.五月色.com| 国产无套粉嫩白浆在线2022年| 国产不卡在线| 久久精品亚洲7777影院| 国产视频中文字幕| 亚洲第一成人在线视频| 国产午夜精品久久久久免费视| 国产青青草在线| av在线日韩国产精品| 国产桃色电影在线播放| www.xxx黄| 91资源在线观看| 最新中文字幕av专区| h视频在线网站| 精品街拍一区二区| 国产日韩网站| 中文字幕在线免费| 久久精品国产亚洲777| av网站在线播放| 伊人222成人综合网| 尤物在线网址| 成人无遮挡免费网站视频在线观看| 国产黄色在线网站| 五月婷婷开心综合| 中文字幕日本在线观看| 青青青手机在线视频观看| 在线观看的网站你懂的| 国产福利免费观看| 国产导航在线| 国产youjizz在线| 精品福利视频导航大全| 精品伦理一区二区| 亚洲综合在线不卡| 亚洲videos| 青青草视频在线免费观看| 永久免费在线观看| 天天插天天狠天天透| 樱花草在线观看www| av免费在线观看网站| 亚洲第一成年免费网站| av中文字幕在线看| 欧洲一区av| 中文字幕在线第一页| 18激情网站| 日本不卡视频一区二区| 国产主播福利在线| 中文字幕不卡| 在线看黄网址| 国产有码在线| 国产精品18久久久久网站| 91网页在线观看| 羞羞视频在线观看免费| xxxxx中文字幕| 五月综合激情在线| 中文字幕2019第三页| 免费三级毛片| 国产一级片在线| 日本一级理论片在线大全| 国产美女高潮一区二区三区| 国产www在线观看| 粉嫩av一区| gogo在线高清视频| 国产精品视频h| www.91在线播放| 国产三级视频| 高潮毛片在线观看| 羞羞视频在线免费看| 国产麻豆视频| 日本免费黄色| 999在线视频| 国产丝袜在线观看视频| 欧美人成在线观看网站高清| 9999在线视频| 国产精品18久久久久网站| 欧洲亚洲精品视频| 精品偷拍激情视频在线观看| 国产尤物一区二区三区| 四虎免费播放| 亚洲精品aaaa精品| 精品国产美女福利到在线不卡| 久草福利资源在线视频| av资源网站在线观看| 69视频在线观看| 国产欧美日韩第一页| 国产精品自拍亚洲| 尤物视频在线免费观看| 激情丁香久久| 中文字幕在线资源| 中文字幕日本在线| 最近中文字幕mv免费高清在线| 国产在线激情视频| 国产69精品久久久久孕妇国产69久久 | 国产在线高潮| 美女永久在线网站| 日韩黄色成人| 黄色三级视频在线观看| 老司机在线视频二区| 老鸭窝av在线| 国产美女视频一区二区三区| 激情四房婷婷| 国产精品理人伦一区二区三区| 国产天堂av| 在线观看av网站| 成av人免费青青久| 中文字幕在线影院| 精品三级久久久久久久电影聊斋| 在线中文资源天堂| 久草福利资源在线视频| 国产视频二区三区| 69视频在线观看| 不卡av免费观看| 国产一区电影| 亚洲视频在线网| 国产美女在线播放| 9999在线视频| 国产自产视频| 在线黄色国产电影| 最近最好的中文字幕2019免费| 国产成人精品综合网站| 日日夜夜中文字幕| 国产高清大尺度一区二区不卡| 亚洲精品午夜级久久久久| 久草电影在线| 永久免费av片在线观看全网站| 天天插天天干| 国产馆av播放| 最新天堂资源在线资源| eeuss影院在线观看第一页| 国产卡一卡二卡三| 亚洲精品一区中文字幕电影| 久草网在线视频| 精品一区二区三区高清免费不卡| 青青草免费在线观看| 国产三级香港三韩国三级| 日本不卡视频一区二区| 国产黄色大片在线观看| 久草国产视频| jizz性欧美| 亚洲伊人网在线观看| 中文字幕视频免费在线观看| 亚洲欧洲成人| 精品一区二区观看| 午夜视频在线看| 国产麻豆精品高清在线播放| 麻豆精品传媒视频观看| 青青国产在线| 亚洲www色| 在线中文av| 在线观看国产视频| 中文字幕av免费| 91麻豆免费在线视频| 国产日产一区二区| 国产精品第八页| 国产成a人亚洲精v品| 国产日本在线视频| 国产高清视频在线观看| 国产国产人免费人成免费视频| 资源视频在线播放免费| 国产午夜精品一区理论片| 国产一区电影| 91www在线观看| 亚洲最新永久在线观看| 欧美视频免费一区二区三区| 欧美高清xxxx性| 国产女人在线观看| 国产一级在线| 中文在线官网天堂| 蜜桃视频中文字幕| 国产精品一区二区三区视频网站| 国产女王在线**视频| 91蜜桃在线视频| 香蕉视频在线观看网站| 国产美女视频网站| 精品视频麻豆入口| 欧美卡一卡二| 国产精美视频| 成年人在线观看| 影音先锋日韩| 国产亚洲精品久久久久久青梅| 99reav| 国产精品天堂| 伊人色综合网| 天堂资源中文在线| 亚洲成a人v欧美综合天堂麻豆| 欧美日韩国产亚洲沙发| 最好看更新中文字幕| 亚洲欧美精选| 18 激情视频在线| 日本中文字幕视频| 青青草观看免费视频在线| 国产一卡2卡3卡四卡网站|