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

企业文档管理wordpress郑州seo外包顾问

企业文档管理wordpress,郑州seo外包顾问,怎么做网页线框图,网站建站优化题目描述 题目:给定一个未排序的整数数组 nums 找出数字连续的最长序列,不要求序列 元素在原数组中连续 的长度 请你设计并实现时间复杂度为On的算法解决此问题 示例 1: 输入:nums [100,4,200,1,3,2] 输出:4 解释&…

题目描述

题目:给定一个未排序的整数数组 nums 找出数字连续的最长序列,不要求序列 元素在原数组中连续 的长度
请你设计并实现时间复杂度为On的算法解决此问题
示例 1:
输入:nums = [100,4,200,1,3,2]
输出:4
解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4 。
关键 用哈希表来记录这个字符是否出现过 然后遍历数组 对于每个数字 检查它是否是某个序列的开始,并更新最大长度
做不出来可以先看看题目,实在没思路再往下看看思路

解题思路

  1. 可以用一个哈希表存储需要查找的字符串
  2. 判断当前数字是否在哈希表中 如果当前数字在哈希表中那么它可能是一个连续的序列的起点,
  3. 找到这个起点向后遍历
  4. 确定最大长度返回

解题步骤

  1. 判断边界条件
  2. 创建哈希表存储这个数
  3. 将每个数字添加到哈希表中
  4. 初始化序列最长的长度、和当前查找的序列长度
  5. 遍历这个哈希表中的所有数字找到它的最长序列返回

代码实现

func longestConsecutive(nums []int) int {// 1. 左边界判断  做算法 的第一步if len(nums) == 0 {return 0}// 2.初始化哈希表set := make(map[int]bool)// 3.将数据存储到哈希表中for num := range nums {set[num] = true}// 3. 初始化 最长序列maxLength := 0for num :=  range set {// 如果当前数字的前一个字符不在哈希表中 那么当前这个数字就有可能是这个序列的起点if !set[num-1] {currentNum := numcurrentSteark := 1}for set[currentNum+1] {currentNum++currentSteark++}// 4.找到最大的那个序列长度maxLength := max(maxLength,currentSteark)}}// 5.返回最大值的序列长度return maxLength
}

代码测试

func main() {nums := []int{100, 4, 200, 1, 3, 2}fmt.Println("Longest consecutive sequence length is:", longestConsecutive(nums))
}

测试结果

在这里插入图片描述

Q&A

为什么使用哈希表来完成这个算法

1 .使用哈希表 可以最快效率的查到该元素 哈希表的复杂度为0(1)
2. 满足这个题目的时间复杂度On的要求

if !set[num-1] 做了什么事

这里说明了 如果当前元素的前一个元素不存在这个哈希表中的话,那么这个元素就可能是这个序列的起点。那么接下来的代码就会从这个数字开始找这个序列。

http://www.shuangfujiaoyu.com/news/61130.html

相关文章:

  • 网站免费打包网站模板免费
  • 关于网站开发的步骤企业网站seo优化
  • 游戏科技外挂地铁网站优化与seo
  • 网站通栏图片代码搜索网站排名优化
  • 网站开发合同范本大全熊猫关键词挖掘工具
  • wgcz公司网站网络推广是干嘛的
  • 苏州做网站公司有哪些网站收录查询平台
  • 做网站预付款是多少seo搜索引擎优化业务
  • 织梦能做视频网站吗网站制作报价表
  • 做网站一定要实名认证吗seo快速软件
  • WordPress去除官网链接杭州哪家seo公司好
  • 西宁做网站需要多少钱国外免费ip地址
  • 厦门的服装商城网站建设广州seo成功案例
  • 定制软件的平台日照seo优化
  • 彩票网站怎么做代理湖南百度推广代理商
  • 建设部网标准下载网站seo排名查询软件
  • 免费网站打包网站keywords
  • 网站建设市场趋势免费seo培训
  • 网站系统建设方案找培训机构的平台
  • 站长平台百度搜狗竞价
  • 腾讯网站建设公司友情链接检测工具
  • 中国旅游网站排名新东方培训机构官网
  • 网站建设和网站运营包括什么交换友情链接平台
  • 网站制作还花钱如何在百度投放广告
  • 海珠做网站郑州网站推广公司电话
  • win主机 wordpress搜索引擎优化的分类
  • 树莓派做网站店铺推广软文案例
  • angular2做的网站有网站免费推广网站
  • wordpress的优势和长沙好的seo外包公司
  • 湛江建设部网站play商店