当前位置: 首页 > news >正文

郴州网站建设推广方案网站更换服务器对seo的影响

郴州网站建设推广方案,网站更换服务器对seo的影响,sem论坛,网站游戏案例深度优先搜索|79. 单词搜索, 695. 岛屿的最大面积, 212. 单词搜索 II 单词搜索岛屿的最大面积单词搜索II 单词搜索 用的是深度优先搜索,这种判断类型的回溯我就一直不知道要怎么回退,然后勉强写了一个。 这里还有一个注意事项就是,走到最后一…

深度优先搜索|79. 单词搜索, 695. 岛屿的最大面积, 212. 单词搜索 II

  • 单词搜索
  • 岛屿的最大面积
  • 单词搜索II

单词搜索

用的是深度优先搜索,这种判断类型的回溯我就一直不知道要怎么回退,然后勉强写了一个。
这里还有一个注意事项就是,走到最后一个元素的时候,我设置的direction list里头就只有用过的几个元素,再加上我写的if used这个时候他就走不下去了,也不会到下一层的index+1了,这个时候又可以观察到,如果走到最后有一个元素了和word也对得上其实并不需要再去看有没有direction了,直接去index+1不用管i,j是谁就能直接True,所以这个地方可以加一个判断就是如果走到这里已经在word最后一个字母后面了,直接True。
然后写到这里就会发现,如果直接出去了,那么

if index == len(word):return True 

这句好像根本不需要,后来发现确实不需要。

class Solution:def exist(self, board: List[List[str]], word: str) -> bool:def direction(i,j,m,n):l = [[i-1,j],[i+1,j],[i,j-1],[i,j+1]]if i == 0:l.remove([i-1,j])if j == 0:l.remove([i,j-1])if i == m-1:l.remove([i+1,j])if j == n-1:l.remove([i,j+1])return l def backtracking(index,i,j):#if index == len(word):#return True l = direction(i,j,m,n)if board[i][j] != word[index]: return Falseused[i][j] = Truefor k1,k2 in l:if index == len(word) - 1:return True if used[k1][k2]: continueif backtracking(index+1,k1,k2):return Trueif l == [] and index == len(word)-1:return Trueused[i][j] = Falsereturn Falsem = len(board)n = len(board[0])used = [[False]*n for _ in range(m)]for i in range(m):for j in range(n):if backtracking(0,i,j):return True return False

岛屿的最大面积

这个题没上面的难,因为他知道是1都是连着的,所以不用回退。

class Solution:def maxAreaOfIsland(self, grid: List[List[int]]) -> int:def direction(i,j,m,n):l = [[i-1,j],[i+1,j],[i,j-1],[i,j+1]]if i == 0:l.remove([i-1,j])if j == 0:l.remove([i,j-1])if i == m-1:l.remove([i+1,j])if j == n-1:l.remove([i,j+1])return l m = len(grid)n = len(grid[0])used = [[False]*n for _ in range(m)]def backtracking(i,j):nonlocal resif grid[i][j] == 0: return 0l = direction(i,j,m,n)res += 1used[i][j] = Truefor k1,k2 in l:if used[k1][k2]:continuebacktracking(k1,k2)return island = 0for i in range(m):for j in range(n):res = 0backtracking(i,j)island = max(island,res)return island

单词搜索II

在上一题的基础上加了一层循环,然后剪枝了一下,大多数还是能运行,就是太长了就超时了
42 / 65,这里有个要点是,每次单词的used list都要重新设,不然路都堵死了。

class Solution:def findWords(self, board: List[List[str]], words: List[str]) -> List[str]:def direction(i,j,m,n):l = [[i-1,j],[i+1,j],[i,j-1],[i,j+1]]if i == 0:l.remove([i-1,j])if j == 0:l.remove([i,j-1])if i == m-1:l.remove([i+1,j])if j == n-1:l.remove([i,j+1])return l def backtracking(index,word,i,j):l = direction(i,j,m,n)if board[i][j] != word[index]: return Falseused[i][j] = Truefor k1,k2 in l:if index == len(word) - 1:return True if used[k1][k2]: continueif backtracking(index+1,word,k1,k2):return Trueif l == [] and index == len(word)-1:return Trueused[i][j] = Falsereturn Falsem = len(board)n = len(board[0])res = []for k in words:used = [[False]*n for _ in range(m)]for i in range(m):if k in res:breakfor j in range(n):#print(i,j,k,res)if k in res:breakif backtracking(0,k,i,j):res.append(k)
http://www.hengruixuexiao.com/news/38968.html

相关文章:

  • 做网站需要多少费用网站排名优化首页
  • 南通网站制作2345网址导航怎么样
  • wix网站建设一键生成原创文案
  • 源码如何做网站百度一下京东
  • 泰安集团网站建设方案网络营销活动推广方式
  • 用友公司能不能做网站建设海外推广方案
  • discuz做电影网站郭生b如何优化网站
  • 建设银行河南省分行招聘网站网站seo方案策划书
  • 香港个人网站可以做商业的百度推广一级代理商名单
  • 网页设计总结体会seo专业培训需要多久
  • 什么网站可以做公务员题企业网站推广的一般策略
  • 福州网站建设网络公司排名上海网站营销推广
  • 做简历网站 知乎营销网点机构号
  • 新西兰签证网站开发百度网页入口官网
  • 企业网址怎么做做seo用哪种建站程序最好
  • 做网站不小心复制了别人的链接写软文赚钱的平台都有哪些
  • 商业信息网站大全网页设计排版布局技巧
  • 少儿英语做游戏网站推荐一般开车用什么导航最好
  • 怎样在中国建设银行网站开通短信提醒模板网站如何建站
  • 做企业门户网站要准备哪些内容微营销推广软件
  • 做网站横幅的软件seo站长工具 论坛
  • 开一个做网站的公司赚钱吗网络优化app
  • 做网站 珠海湖南企业竞价优化服务
  • 青海省wap网站建设公司十种网络推广的方法
  • 百度建立网站seo关键词排名实用软件
  • 网站开发前后端分离是主流吗网络营销有哪些例子
  • 加强政府门户网站建设郑州网站建设优化
  • 设计师个人网站主页网络推广是以企业产品或服务
  • 义乌个人兼职做建设网站网站页面优化内容包括哪些
  • 游戏网站建设与策划谷歌商店下载官方