2021-10-19:缺失的区间。给定一个排序的整数数组 nums ,其中元素的范围在 闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间。力扣163。

福大大 答案2021-10-19:

一次遍历。遍历的时候,修改左边界。
时间复杂度:O(N)。
空间复杂度:O(1)。

代码用golang编写。代码如下:

package main

import "fmt"

func main() {
nums := []int{1, 2, 3, 4, 6, 8, 10}
lower := 2
upper := 10
ret := findMissingRanges(nums, lower, upper)
fmt.Println(ret)
} func findMissingRanges(nums []int, lower int, upper int) []string {
ans := make([]string, 0)
for _, num := range nums {
if num > lower {
ans = append(ans, miss(lower, num-1))
}
if num == upper {
return ans
}
lower = num + 1
}
if lower <= upper {
ans = append(ans, miss(lower, upper))
}
return ans
} // 生成"lower->upper"的字符串,如果lower==upper,只用生成"lower"
func miss(lower, upper int) string {
left := fmt.Sprintf("%d", lower)
right := ""
if upper > lower {
right = "->" + fmt.Sprintf("%d", upper)
}
return left + right
}

执行结果如下:


左神java代码

2021-10-19:缺失的区间。给定一个排序的整数数组 nums ,其中元素的范围在 闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间。力扣163。的更多相关文章

  1. 9.11排序与查找(三)——给定一个排序后的数组,包括n个整数,但这个数组已被旋转过多次,找出数组中的某个元素

    /**  * 功能:给定一个排序后的数组.包括n个整数.但这个数组已被旋转过多次,次数不详.找出数组中的某个元素.  * 能够假定数组元素原先是按从小到大的顺序排列的.  */ /** * 思路:数组 ...

  2. 日常Java 2021/10/19

    Java集合框架 Java 集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合,另一种是图(Map),存储键/值对映射. Collection接口又有3种子类型,Li ...

  3. 2021.10.19 CSP 模拟赛 总结

    T1 题意: \(n\) 个人摘苹果,跳起高度为 \(a_i\),苹果高度为 \(h_i\),高度小的先摘,摘了就没了 直接排序+双指针,复杂度 \(O(n+m)\) T2 题意:要轰炸一个有向图的所 ...

  4. Windows 11 正式版(2021/10/19更新)

    Windows 11 (business editions), version 21H2 (updated October 2021) (x64) - DVD (Chinese-Simplified) ...

  5. 对于一个字符串,请设计一个高效算法,找到第一次重复出现的字符。 给定一个字符串(不一定全为字母)A及它的长度n。请返回第一个重复出现的字符。保证字符串中有重复字符,字符串的长度小于等于500。

    // 第一种方法 // ConsoleApplication10.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include < ...

  6. 力扣(LeetCode)删除排序链表中的重复元素II 个人题解

    给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 思路和上一题类似(参考 力扣(LeetCode)删除排序链表中的重复元素 个人题解)) 只不过这里需要用到一个前 ...

  7. 力扣 ——Remove Duplicates from Sorted List II(删除排序链表中的重复元素 II)python实现

    题目描述: 中文: 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 示例 1: 输入: 1->2->3->3->4->4-> ...

  8. 力扣—Remove Duplicates from Sorted List(删除排序链表中的重复元素)python实现

    题目描述: 中文: 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次. 示例 1: 输入: 1->1->2输出: 1->2 示例 2: 输入: 1->1->2 ...

  9. 力扣——single number (只出现一次的数字) python实现

    题目描述: 中文: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 英 ...

  10. 力扣——single number 2(只出现一次的数字 2) python实现

    题目描述: 中文: 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? ...

随机推荐

  1. SpringBoot笔记--Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.报错的解决

    问题描述 写了SpringBoot代码之后,运行不出来结果,报出这样的一个错误:Failed to configure a DataSource: 'url' attribute is not spe ...

  2. 快速构造Python爬虫请求,有这个网站就够了!

    引言 大家好,我是蜡笔小曦. 我们在通过程序向某个网页发起请求时,实际上是模拟浏览器进行http(超文本传输协议)请求,这就要求我们需要按照固定的格式进行代码构造. 一般请求数据分为三部分:请求行.请 ...

  3. University of Toronto Scarborough Campus December 7, 2017 CSC C73 Final Examination Instructor: Vassos Hadzilacos

    https://app.yinxiang.com/shard/s59/res/8a11b895-19b5-4ca1-aefe-10b5985b8af9/CSCC73 Final 17.pdf 自己尝试 ...

  4. uniapp踩坑必备笔记

    1.[配置]应用版本号名称有一个规则的字符串:1.0.0,规则是:大版本号,中版本号,小版本号. 2.[配置]应用版本号中的小版本号不能超过9,超过9的需要向上一个版本号进一(逢十进一). 3.[配置 ...

  5. Redis 故障排查

    系统性学习,移步IT-BLOG 要进行 Redis 的故障定位,一般通过分析 Redis 日志.应用日志和 Redis 的监控信息来定位相关问题. 一.Redis 日志设置 [1]日志文件:Redis ...

  6. python协程详细解释以及例子

    目录 1.协程 1.1greenlet实现协程 1.2yield关键字实现协程 1.3使用asyncio模块实现协程 1.4async & await关键字实现协程 2.协程意义 3.异步编程 ...

  7. 什么?又来智能AI编程?让不让我们活了!

    无事逛github发现了一款智能AI编程,故下载试试 发现异常好用 推荐给大家 github地址:GitHub - getcursor/cursor:一个用于使用AI 编程的编辑器 支持:C# ,Ja ...

  8. Redis集群介绍及测试思路

    作者:京东零售 李磊 Redis集群介绍 Redis集群一般有四种方式,分别为:主从复制.哨兵模式.Cluster以及各大厂的集群方案.在3.0版本之前只支持单实例模式,3.0之后支持了集群方式.在3 ...

  9. 记录 跨境猴 shopee 虾皮 货代 贴单 仓储 打包系统 介绍

    shopee虾皮|lazada|shopify代打包贴单仓储系统(简称:跨境猴)基于ThinkPHP6.0+AdminLTE-2.3.11+JQuery+PHP7.0+Swoole+Mysql5.5+ ...

  10. 【Mybatis】(一)

    Mybatis简介 提供持久层框架包括SQL Maps和Data Access Objects(DAO). SQL Maps提供数据库数据和java数据的映射关系,换句话说即是封装JDBC的过程. D ...