问题:由n-1个整数组成的未排序数组,元素都是1~n的不同整数,找出其中缺失的整数

方法一:

思路:是原数组的和 减去 丢失元素后的数组的和,就得到丢失的元素了

代码如下:

package main

import (

"errors"

"fmt"

)

func getMissingElement(arr []int) int {

var sumA, sumB int

if arr == nil || len(arr) <= 0 {

errors.New("空数组")

}

for k, v := range arr {

sumA += v

sumB += k

}

sumB = sumB + len(arr)*2 + 1

return sumB - sumA

}

func main() {

var arr []int

arr = []int{1, 3, 2, 6, 5, 7, 8}

fmt.Println(getMissingElement(arr))

}

结果:4

补充:golang菜鸟常见的坑----golang切片与数组

切片与数组的区别:

数组(array:=[len]int{})一旦声明定义,便会有固定的长度(len),固定的容量(cap),且数组不能修改长度。

切片(slice:=[]int{})定义之后,长度(len)、容量(cap)可以不固定!

如下图所示:slice s再声明之后还可以追加元素。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持云海天教程。如有错误或未考虑完全的地方,望不吝赐教。

golang 数组组合成最小的整数_golang数组-----寻找数组中缺失的整数方法相关推荐

  1. golang 数组组合成最小的整数_Redis之整数集合底层实现

    1.整数集合简述 整数集合是集合键的底层实现之一,当一个集合只包含整数值元素,并且这个集合的元素数量不多时,Redis就会使用整数集合作为集合键的底层实现.例如当我们创建只包含五个元素的集合键,并且集 ...

  2. golang 数组组合成最小的整数_整数数组拼成一个最小或最大的数

    其实这道题的本质是一个排序问题.不管求最大还是最小, 我们都可以使用排序算法解决. 普通排序是升序还是降序,主要看交互比较代码,这里求最小值相当于一个升级, 求最大值相当于一个降序. 这道题的特殊就在 ...

  3. 7-88 组合成最小的三位数

    7-88 组合成最小的三位数 输入一个三位数的正整数,将数字位置重新排列,组成一个尽可小的三位数. 输入格式: 输入一个三位的正整数. 输出格式: 输出组合之后最小的三位值正整数. 输入样例: 315 ...

  4. 把数组排列成最小的数(详解)

    题目:   输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323. 题目解析: ...

  5. java 16进制数组 字符串_byte数组转换成16进制字符串和字符数组的方法

    byte数组转换成16进制字符串String: public class CommonUtil { /** * byte数组转换成16进制字符串 * @param src * @return */ p ...

  6. char数组转换成字符串_将字符串转换为char数组java –将字符串转换为char

    char数组转换成字符串 Sometimes we have to convert String to the character array in java programs or convert ...

  7. java的byte[]数组转成字符串并且再转回byte[]数组

    byte[] bytes=new byte[] {-58,-85,55,7}; Arrays.toString(bytes) /*** 解码byte[]数组的字符串变成byte[]* @param b ...

  8. go在方法中修改结构体的值_golang修改结构体中的切片值方法

    golang修改结构体中的切片值方法,结构,切片,站长站,文章,相关文章 golang修改结构体中的切片值方法 易采站长站,站长之家为您整理了golang修改结构体中的切片值方法的相关内容. gola ...

  9. java字节数组转换成16进制_Java 将字节数组转化为16进制的多种方案

    很多时候我们需要将字节数组转化为16进制字符串来保存,尤其在很多加密的场景中,例如保存密钥等.因为字节数组,除了写入文件或者以二进制的形式写入数据库以外,无法直接转为为字符串,因为字符串结尾有\0,当 ...

最新文章

  1. C#高级编程----错误和异常的总结
  2. 关于IT人职业道德的反思(转)
  3. 排列组合 概率 贝叶斯理解
  4. jcifs java_Java 使用JCIFS访问网络文件共享的工具类
  5. 利用线程下载网页中的程序并另存到本地
  6. 前后端分离 跨域问题解决
  7. Android钢琴滑动代码,android 钢琴界面实现
  8. iOS:Xcode8以下真机测试iOS10.0和iOS10.1配置包
  9. CSS 背景尺寸 background-size属性
  10. mysql 书名_深入理解MySQL
  11. 巧替换windows 7中的宋体 simsun.ttc
  12. [论文总结] 深度学习在农业领域应用论文笔记9
  13. 如何写好一篇科技论文?
  14. 英文字体识别在线识别_如何查找和识别字体
  15. 访问页面出错:The requested URL / was not found on this server. 网站打开出现404
  16. 密码学与加密算法详解
  17. Oracle 锁表查询
  18. MOBA类和“吃鸡”游戏为什么对网络延迟要求高?
  19. HBase的regionServer
  20. Class 2 基于ECS快速搭建Docker环境

热门文章

  1. c语言水仙花数(输入判断),用c语言判断一个数是否为水仙花数?
  2. 预登录握手失败_英雄联盟手游登录问题汇总
  3. 学计算机就业靠谱吗,2018年计算机专业就业怎么样?
  4. python queue模块安装_Python -- Queue模块
  5. SpringBoot 使用 Caffeine 本地缓存
  6. Hadoop集群安装部署_伪分布式集群安装_01
  7. TortoiseGit 推送本地仓库变动文件至远程仓库_入门试炼_06
  8. flowable实战(十五)关于流程设计器 bpmn.js与vue的整合
  9. rocketmq原理_彻底看懂RocketMQ事务实现原理
  10. 路由器上的usb接口有什么用_工业主板上有多少种USB接口,红色的USB接口代表什么...