1.异或
2.字典或集合
3.排序

golang语言采用异或方式,代码如下:

package test21_singlenumberimport ("fmt""testing"
)//go test -v -test.run TestSingleNumber
func TestSingleNumber(t *testing.T) {arr := []int{3, 1, 2, 1, 3, 4, 4}fmt.Println("数组:", arr)fmt.Println("结果:", singleNumber(arr))
}func singleNumber(nums []int) int {single := 0for _, num := range nums {single ^= num}return single
}

敲go test -v -test.run TestSingleNumber命令,结果如下:

评论

2020-06-09:给定一个无序数组,里面数都是成双数的,只有一个数是成单数的,求这个数?相关推荐

  1. 牛客网:给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)

    题目描述 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1) 输入描述: 无序整数数组A[n] 输出描述: 满足条件的最大乘积 ...

  2. 2020-06-10:给定一个无序数组,里面数都是成双数的,只有一个数是成单数的,求这个数? 如果上面那题里面有两个单数,怎么求出来?

    1.异或 2.字典或集合 3.排序 golang语言采用异或方式,代码如下: package test22_singlenumber3import ("fmt""test ...

  3. 基础算法:给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)

    这里要注意的是当数字足够大的时候,我们要使用long long形式的类型,用来记录那个最大值 最大值共有四种情况: 三个正数:数字本身越大则乘积越大 两个负数一个正数:负负得正,所以两个负数最小,之积 ...

  4. 给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大 java实现

    实现该算法主要思想是, 1.两个负数与与一个正数相乘 2.全为最大正数相乘得到最大值 下面用算法实现,时间复杂度为O(n),下面用java实现,不过有一些为0的情况排除下可以,还有一些整形过大可以变为 ...

  5. 有苦有乐的算法 --- 一个无序数组,如果从小到大排好序,任何一个元素任何一个元素移动索引长度不超过k,实现排序

    题目 一个无序数组,如果从小到大排好序,任何一个元素任何一个元素移动索引长度不超过k,实现从小到大排序 例: k=2 排序后,[4]移动2个索引,[6]移动2个索引,[1]移动2个索引,[3]移动2个 ...

  6. 整型数组 判断 java,给定一个整数数组,判断其中是否有3个数和为N

    借助集合将复杂度降到n2,但耗时还是比较长. import java.util.HashMap; import java.util.HashSet; import java.util.Scanner; ...

  7. 给定一个整数数组,判断是否存在重复元素。

    存在重复元素 给定一个整数数组,判断是否存在重复元素. 如果存在一值在数组中出现至少两次,函数返回 true .如果数组中每个元素都不相同,则返回 false 示例 1: 输入: [1,2,3,1] ...

  8. 作业帮:给定一个整数数组,找出其中两个数相加等于目标值(去重set)

    题目描述 给定一个整数数组,找出其中两个数相加等于目标值输入 [1,3,5,7,9,11] 10输出 1,9 3,7 代码: import java.util.HashMap; import java ...

  9. 如何把一个整数转化成数组_「leetcode891」给定一个整数数组 A,考虑 A 的所有非空子序列...

    给定一个整数数组 A ,考虑 A 的所有非空子序列. 对于任意序列 S ,设 S 的宽度是 S 的最大元素和最小元素的差. 返回 A 的所有子序列的宽度之和. 由于答案可能非常大,请返回答案模 10^ ...

最新文章

  1. mysql 5.5.35 单机多实例配置详解_MySQL 5.5.35 单机多实例配置详解
  2. Spring 依赖注入(集合)/util命名空间/自动注入
  3. 获取响应里面的cookie的方法
  4. quartus仿真系列3:74283的4位并行加法器
  5. php curl 请求失败,PHP CURL库之GET、POST数据大小限制导致请求失败解决方案
  6. 统计github本地仓库的代码行数
  7. word文档通配符换行_Word文档每一行后面都有小箭头如何消除?
  8. OpenCV python 轮廓的极值点
  9. 第十二周项目四----利用遍历思想求解图问题之6最短路径
  10. Cesium|xt3d卫星正摄动画
  11. 金融安全算法介绍系列6——RSA
  12. dsp的ad标志位是什么_关于STM32 AD转换的ADC_FLAG_EOC标志位问题
  13. brpc源码学习(一)-butex
  14. 盘点 | 2020大数据十大关键词与趋势新鲜出炉
  15. IB交换机配置命令总结
  16. 计数器概念和异步二进制计数器
  17. SuperPoint:深度学习特征点+描述子
  18. 2022华为机试真题 C++ 实现【快速人名查找】
  19. 高速公路视频监控系统的Bypass 工业以太网交换机特点
  20. Typora教程2 | 偏好设置

热门文章

  1. Web GIS在人口统计学上的10种运用
  2. BST 递归实现二叉树: 插入 删除 查找
  3. h5响应式布局、PC和移动端适配方案
  4. 怎么用linux账号登录foxmail,Foxmail 7 发布:全面支持Exchange帐号
  5. 电动车Gogoro曲线上市:募资缩水超2亿美元 路演PPT曝光
  6. openssl qt 生成秘钥_OpenSSL证书生成(Windows环境)
  7. mysql显示各专业总人数_mysql实现每个专业分数段统计人数
  8. Linux 安装软件是错误:正在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程
  9. vant/vue——tab栏切换上下箭头功能实现
  10. jsp城乡信息管理系统