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

团购做的好的网站情感式软文广告

团购做的好的网站,情感式软文广告,传奇网页游戏开服,网络营销服务代码随想录算法训练营Day 63| 图论 part03 | 417.太平洋大西洋水流问题、827.最大人工岛、127. 单词接龙 文章目录 代码随想录算法训练营Day 63| 图论 part03 | 417.太平洋大西洋水流问题、827.最大人工岛、127. 单词接龙17.太平洋大西洋水流问题一、DFS二、BFS三、本题总结 82…代码随想录算法训练营Day 63| 图论 part03 | 417.太平洋大西洋水流问题、827.最大人工岛、127. 单词接龙 文章目录 代码随想录算法训练营Day 63| 图论 part03 | 417.太平洋大西洋水流问题、827.最大人工岛、127. 单词接龙17.太平洋大西洋水流问题一、DFS二、BFS三、本题总结 827.最大人工岛一、DFS 用全局变量得到area二、DFS 用局部变量三、BFS 127. 单词接龙一、BFS 17.太平洋大西洋水流问题 题目链接 一、DFS class Solution(object):def pacificAtlantic(self, heights)::type heights: List[List[int]]:rtype: List[List[int]]m,nlen(heights),len(heights[0])dirs [(-1,0),(0,1),(1,0),(0,-1)]pacific[[0]*n for _ in range(m)]atlantic[[0]*n for _ in range(m)]result[] # DFSdef dfs(x,y,ocean):ocean[x][y]1for d in dirs:nextx,nextyxd[0],yd[1]if 0 nextx m and 0 nexty n and heights[nextx][nexty] heights[x][y] and ocean[nextx][nexty]0:dfs(nextx,nexty,ocean)for i in range(m):dfs(i,0,pacific)dfs(i,n-1,atlantic)for j in range(n):dfs(0,j,pacific)dfs(m-1,j,atlantic)for i in range(m):for j in range(n):if pacific[i][j]1 and atlantic[i][j]1:result.append([i,j])return result 二、BFS class Solution(object):def pacificAtlantic(self, heights)::type heights: List[List[int]]:rtype: List[List[int]]m,nlen(heights),len(heights[0])dirs [(-1,0),(0,1),(1,0),(0,-1)]pacific[[0]*n for _ in range(m)]atlantic[[0]*n for _ in range(m)]result[] # BFSdef bfs(x,y,ocean):qcollections.deque()q.append((x,y))ocean[x][y]1while q:x,y q.popleft()for d in dirs:nextx,nextyxd[0],yd[1]if 0 nextx m and 0 nexty n and heights[nextx][nexty] heights[x][y] and ocean[nextx][nexty]0:ocean[nextx][nexty]1q.append((nextx,nexty))for i in range(m):bfs(i,0,pacific)bfs(i,n-1,atlantic)for j in range(n):bfs(0,j,pacific)bfs(m-1,j,atlantic)for i in range(m):for j in range(n):if pacific[i][j]1 and atlantic[i][j]1:result.append([i,j])return result三、本题总结 用两个visited来表示 827.最大人工岛 题目链接 一、DFS 用全局变量得到area class Solution(object):def largestIsland(self, grid)::type grid: List[List[int]]:rtype: int总体思路利用 DFS 计算出各个岛屿的面积并标记每个 1陆地格子属于哪个岛。遍历每个 0统计其上下左右四个相邻格子所属岛屿的编号去重后累加这些岛的面积更新答案的最大值。m,n len(grid),len(grid[0])dirs [(-1,0),(0,1),(1,0),(0,-1)]area collections.defaultdict(int) # 用于储存岛屿面积def dfs(x,y,island_num): # 输入岛屿编号grid[x][y]island_num area[island_num] 1 # 更新岛屿面积for d in dirs:nextx,nextyxd[0],yd[1]if 0 nextx m and 0 nexty n and grid[nextx][nexty]1:grid[nextx][nexty]island_numdfs(nextx,nexty,island_num)island_num 1 for i in range(m):for j in range(n):if grid[i][j]1: # 遇到新岛屿island_num 1 # 岛屿编号从2开始dfs(i,j,island_num) ans0for i in range(m):for j in range(n):sset() # 去重if grid[i][j]0:for d in dirs:nexti,nextjid[0],jd[1]if 0 nexti m and 0 nextj n and grid[nexti][nextj]!0:s.add(grid[nexti][nextj])ans max(ans,1sum(area[idx] for idx in s))return ans if ans else n*n # 如果最后 ans 仍然为 0说明所有格子都是 1返回 n^2二、DFS 用局部变量 class Solution(object):def largestIsland(self, grid)::type grid: List[List[int]]:rtype: int总体思路 利用 DFS 计算出各个岛屿的面积并标记每个 1陆地格子属于哪个岛。 遍历每个 0统计其上下左右四个相邻格子所属岛屿的编号去重后累加这些岛的面积更新答案的最大值。m,n len(grid),len(grid[0])dirs [(-1,0),(0,1),(1,0),(0,-1)]area collections.defaultdict(int) # 用于储存岛屿面积def dfs(x,y,island_num): # 输入岛屿编号grid[x][y]island_num size1# area[island_num] 1 # 更新岛屿面积for d in dirs:nextx,nextyxd[0],yd[1]if 0 nextx m and 0 nexty n and grid[nextx][nexty]1:grid[nextx][nexty]island_numsize dfs(nextx,nexty,island_num)return size # 得到岛屿的面积island_num 1 for i in range(m):for j in range(n):if grid[i][j]1: # 遇到新岛屿island_num 1 # 岛屿编号从2开始area[island_num]dfs(i,j,island_num) ans0for i in range(m):for j in range(n):sset() # 去重if grid[i][j]0:for d in dirs:nexti,nextjid[0],jd[1]if 0 nexti m and 0 nextj n and grid[nexti][nextj]!0:s.add(grid[nexti][nextj])ans max(ans,1sum(area[idx] for idx in s))return ans if ans else n*n # 如果最后 ans 仍然为 0说明所有格子都是 1返回 n^2三、BFS class Solution(object):def largestIsland(self, grid)::type grid: List[List[int]]:rtype: int总体思路 利用 DFS 计算出各个岛屿的面积并标记每个 1陆地格子属于哪个岛。 遍历每个 0统计其上下左右四个相邻格子所属岛屿的编号去重后累加这些岛的面积更新答案的最大值。# BFSdef bfs(x,y,island_num): # 输入岛屿编号grid[x][y]island_num size1# area[island_num] 1 # 更新岛屿面积qcollections.deque()q.append((x,y))while q:x,yq.popleft()for d in dirs:nextx,nextyxd[0],yd[1]if 0 nextx m and 0 nexty n and grid[nextx][nexty]1:grid[nextx][nexty]island_numq.append((nextx,nexty))size 1return sizeisland_num 1 for i in range(m):for j in range(n):if grid[i][j]1: # 遇到新岛屿island_num 1 # 岛屿编号从2开始# dfs(i,j,island_num) # 法1area[island_num]bfs(i,j,island_num) ans0for i in range(m):for j in range(n):sset() # 去重if grid[i][j]0:for d in dirs:nexti,nextjid[0],jd[1]if 0 nexti m and 0 nextj n and grid[nexti][nextj]!0:s.add(grid[nexti][nextj])ans max(ans,1sum(area[idx] for idx in s))return ans if ans else n*n # 如果最后 ans 仍然为 0说明所有格子都是 1返回 n^2 127. 单词接龙 题目链接 一、BFS class Solution(object):def ladderLength(self, beginWord, endWord, wordList)::type beginWord: str:type endWord: str:type wordList: List[str]:rtype: intwordset set(wordList)if len(wordList)0 or endWord not in wordset :return 0q collections.deque()q.append(beginWord)visitedset(beginWord)step1while q:level len(q)for l in range(level):word q.popleft()word_list list(word)for i in range(len(word_list)):origin_charword_list[i]for j in range(26):word_list[i] chr(ord(a)j)new_word .join(word_list)if new_word in wordset:if new_word endWord:return step1if new_word not in visited:q.append(new_word)visited.add(new_word)word_list[i]origin_charstep 1return 0
http://www.pierceye.com/news/598887/

相关文章:

  • 静态网站怎么做优化网站建设用什么软件
  • 如何建设移动端网站物联网设计
  • 赣州网站设计哪里好天河网站建设多少钱
  • 做lol直播网站设计一个公司网站多少钱
  • 电商网站 投诉百度录入网站
  • 如何做产品网站网页论坛的网站开发项目
  • 如何在记事本中做网站链接冰雪蜜城店加盟费多少
  • 中山网站建设公司专业建站公司设计
  • 汽车手机网站制作一个具体网站的seo优化
  • 手机网站的页面大小wordpress下载主题博客
  • 创客贴设计网站官网高端网站制作网址
  • 衡水网站建设选哪家信用网站系统建设方案
  • 网站全屏代码如何做网站外链
  • 中国人自己的空间站哪里有免费的网站模板下载 迅雷下载 迅雷下载软件
  • 网站建设預算网站的新闻模块怎么做
  • 浙江省建设厅查询官方网站外贸业务员
  • 乐清公司网站建设高端网站有哪些
  • 网站备案状态查询漳州北京网站建设
  • wordpress oss ftp湖北百度seo排名
  • 深圳福田站弹簧机东莞网站建设
  • 网站美工要求企业建设网站风险
  • 网站建设项目资金申请报告semen
  • 阿里巴巴上做网站要多少钱信息网络工程师
  • 网站建设与网页设计心得体会淘宝网页制作素材
  • 男女做床网站装酷网装修平台
  • 网站引导页动画华为网站哪个公司做的
  • 网站开发用了哪些技术上海建设网站制作
  • 惠州微网站建设胶州家园网站建设
  • 建设配资网站有要求吗网站的内部链接如何做
  • 济南专业做公司网站的机构评价一个网站的优缺点