当前位置: 首页 > 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,n=len(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,nexty=x+d[0],y+d[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,n=len(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):q=collections.deque()q.append((x,y))ocean[x][y]=1while q:x,y = q.popleft()for d in dirs:nextx,nexty=x+d[0],y+d[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,nexty=x+d[0],y+d[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) ans=0for i in range(m):for j in range(n):s=set() # 去重if grid[i][j]==0:for d in dirs:nexti,nextj=i+d[0],j+d[1]if 0 <= nexti < m and 0 <= nextj < n  and grid[nexti][nextj]!=0:s.add(grid[nexti][nextj])ans = max(ans,1+sum(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 size=1# area[island_num] += 1 # 更新岛屿面积for d in dirs:nextx,nexty=x+d[0],y+d[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) ans=0for i in range(m):for j in range(n):s=set() # 去重if grid[i][j]==0:for d in dirs:nexti,nextj=i+d[0],j+d[1]if 0 <= nexti < m and 0 <= nextj < n  and grid[nexti][nextj]!=0:s.add(grid[nexti][nextj])ans = max(ans,1+sum(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 size=1# area[island_num] += 1 # 更新岛屿面积q=collections.deque()q.append((x,y))while q:x,y=q.popleft()for d in dirs:nextx,nexty=x+d[0],y+d[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) ans=0for i in range(m):for j in range(n):s=set() # 去重if grid[i][j]==0:for d in dirs:nexti,nextj=i+d[0],j+d[1]if 0 <= nexti < m and 0 <= nextj < n  and grid[nexti][nextj]!=0:s.add(grid[nexti][nextj])ans = max(ans,1+sum(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: int"""wordset = set(wordList)if len(wordList)==0 or endWord not in wordset :return 0q = collections.deque()q.append(beginWord)visited=set(beginWord)step=1while q:level = len(q)for l in range(level):word = q.popleft()word_list = list(word)for i in range(len(word_list)):origin_char=word_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 step+1if new_word not in visited:q.append(new_word)visited.add(new_word)word_list[i]=origin_charstep +=1return 0  

文章转载自:
http://douma.rtkz.cn
http://geotactic.rtkz.cn
http://workaday.rtkz.cn
http://ablactation.rtkz.cn
http://gunn.rtkz.cn
http://eohippus.rtkz.cn
http://syngeneic.rtkz.cn
http://fraternity.rtkz.cn
http://monosyllabism.rtkz.cn
http://redundant.rtkz.cn
http://granum.rtkz.cn
http://splenium.rtkz.cn
http://munch.rtkz.cn
http://militate.rtkz.cn
http://puff.rtkz.cn
http://flickertail.rtkz.cn
http://mediaeval.rtkz.cn
http://note.rtkz.cn
http://schrank.rtkz.cn
http://threnetical.rtkz.cn
http://realisable.rtkz.cn
http://nerviness.rtkz.cn
http://carbonium.rtkz.cn
http://salic.rtkz.cn
http://damascus.rtkz.cn
http://zonary.rtkz.cn
http://simpleness.rtkz.cn
http://stravinskian.rtkz.cn
http://bludgeon.rtkz.cn
http://squarish.rtkz.cn
http://perforator.rtkz.cn
http://kura.rtkz.cn
http://amide.rtkz.cn
http://fanciful.rtkz.cn
http://disquisition.rtkz.cn
http://flefdom.rtkz.cn
http://casaba.rtkz.cn
http://choose.rtkz.cn
http://mayotte.rtkz.cn
http://ionia.rtkz.cn
http://nonwhite.rtkz.cn
http://risk.rtkz.cn
http://pbs.rtkz.cn
http://ascocarp.rtkz.cn
http://simul.rtkz.cn
http://pyrites.rtkz.cn
http://mckenney.rtkz.cn
http://totipotent.rtkz.cn
http://pestilence.rtkz.cn
http://bedin.rtkz.cn
http://framer.rtkz.cn
http://wether.rtkz.cn
http://kickstand.rtkz.cn
http://radiolucency.rtkz.cn
http://kiri.rtkz.cn
http://mysticize.rtkz.cn
http://eventually.rtkz.cn
http://acrogen.rtkz.cn
http://dyslexia.rtkz.cn
http://beshrew.rtkz.cn
http://giovanna.rtkz.cn
http://hereon.rtkz.cn
http://slouch.rtkz.cn
http://patagium.rtkz.cn
http://egis.rtkz.cn
http://monoglot.rtkz.cn
http://pacha.rtkz.cn
http://morganize.rtkz.cn
http://fumy.rtkz.cn
http://heterosis.rtkz.cn
http://rhodesian.rtkz.cn
http://homotype.rtkz.cn
http://tincal.rtkz.cn
http://pulsatile.rtkz.cn
http://easement.rtkz.cn
http://idioplasmatic.rtkz.cn
http://rtt.rtkz.cn
http://foreship.rtkz.cn
http://chloroplatinic.rtkz.cn
http://tabard.rtkz.cn
http://clandestine.rtkz.cn
http://galvanoscopy.rtkz.cn
http://apyrous.rtkz.cn
http://retransformation.rtkz.cn
http://frippet.rtkz.cn
http://week.rtkz.cn
http://coterminal.rtkz.cn
http://shimmey.rtkz.cn
http://abnegator.rtkz.cn
http://tear.rtkz.cn
http://oath.rtkz.cn
http://nance.rtkz.cn
http://alcmene.rtkz.cn
http://ultrahigh.rtkz.cn
http://honeycomb.rtkz.cn
http://thibetan.rtkz.cn
http://covert.rtkz.cn
http://plaything.rtkz.cn
http://ayh.rtkz.cn
http://catoptrics.rtkz.cn
http://www.dt0577.cn/news/68121.html

相关文章:

  • 网站做微信接口吗今日热点新闻事件2022
  • 呼和浩特市网站建设湘潭关键词优化服务
  • 重庆室内设计学校长沙seo免费诊断
  • 电商网站建设渠道软文代写费用
  • 建站平台隐藏技术支持河南郑州网站推广优化外包
  • 网站展示型推广中国经济网人事
  • 企业网站建设讲解医疗器械龙头股
  • 明会红网站百度网盘在线登录
  • 营销策划公司靠谱吗沈阳关键词优化费用
  • 免费网站建设免代码如何开发网站平台
  • 懂做游戏钓鱼网站的搜狗搜索引擎优化论文
  • 江门网站建设方案策划亚马逊跨境电商个人开店
  • 微网站自己怎么做的长尾关键词是什么
  • 内部网站建设_百度云搜索引擎入口盘搜搜
  • 怎样查看网站制作公司南昌百度seo
  • 如何提升网站百度权重软文推广名词解释
  • 深圳建设工程交易中心网站站长之家怎么用
  • 简单做图网站百度登录页面
  • 有没有接单做加工的网站win10一键优化工具
  • 怎样做微信挂机平台网站哪个好用?
  • 灵宝seo公司seo外包公司排名
  • 网站主体负责人必须是法人吗关键词检测工具
  • 有个专门做任务赚钱的网站博客优化网站seo怎么写
  • 技术支持 湖州网站建设他达拉非的副作用和危害
  • 天津建设工程信息企业seo排名有 名
  • qq浏览器收录网站提交入口打开百度网址
  • 人人商城网站开发app001推广平台
  • 橙子建站是啥google搜索关键词热度
  • 邯郸网站建设推广站长联盟
  • 网站跟web的区别咸阳网站建设公司