2020-06-09:给定一个无序数组,里面数都是成双数的,只有一个数是成单数的,求这个数?
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:给定一个无序数组,里面数都是成双数的,只有一个数是成单数的,求这个数?相关推荐
- 牛客网:给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)
题目描述 给定一个无序数组,包含正数.负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1) 输入描述: 无序整数数组A[n] 输出描述: 满足条件的最大乘积 ...
- 2020-06-10:给定一个无序数组,里面数都是成双数的,只有一个数是成单数的,求这个数? 如果上面那题里面有两个单数,怎么求出来?
1.异或 2.字典或集合 3.排序 golang语言采用异或方式,代码如下: package test22_singlenumber3import ("fmt""test ...
- 基础算法:给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大,要求时间复杂度:O(n),空间复杂度:O(1)
这里要注意的是当数字足够大的时候,我们要使用long long形式的类型,用来记录那个最大值 最大值共有四种情况: 三个正数:数字本身越大则乘积越大 两个负数一个正数:负负得正,所以两个负数最小,之积 ...
- 给定一个无序数组,包含正数、负数和0,要求从中找出3个数的乘积,使得乘积最大 java实现
实现该算法主要思想是, 1.两个负数与与一个正数相乘 2.全为最大正数相乘得到最大值 下面用算法实现,时间复杂度为O(n),下面用java实现,不过有一些为0的情况排除下可以,还有一些整形过大可以变为 ...
- 有苦有乐的算法 --- 一个无序数组,如果从小到大排好序,任何一个元素任何一个元素移动索引长度不超过k,实现排序
题目 一个无序数组,如果从小到大排好序,任何一个元素任何一个元素移动索引长度不超过k,实现从小到大排序 例: k=2 排序后,[4]移动2个索引,[6]移动2个索引,[1]移动2个索引,[3]移动2个 ...
- 整型数组 判断 java,给定一个整数数组,判断其中是否有3个数和为N
借助集合将复杂度降到n2,但耗时还是比较长. import java.util.HashMap; import java.util.HashSet; import java.util.Scanner; ...
- 给定一个整数数组,判断是否存在重复元素。
存在重复元素 给定一个整数数组,判断是否存在重复元素. 如果存在一值在数组中出现至少两次,函数返回 true .如果数组中每个元素都不相同,则返回 false 示例 1: 输入: [1,2,3,1] ...
- 作业帮:给定一个整数数组,找出其中两个数相加等于目标值(去重set)
题目描述 给定一个整数数组,找出其中两个数相加等于目标值输入 [1,3,5,7,9,11] 10输出 1,9 3,7 代码: import java.util.HashMap; import java ...
- 如何把一个整数转化成数组_「leetcode891」给定一个整数数组 A,考虑 A 的所有非空子序列...
给定一个整数数组 A ,考虑 A 的所有非空子序列. 对于任意序列 S ,设 S 的宽度是 S 的最大元素和最小元素的差. 返回 A 的所有子序列的宽度之和. 由于答案可能非常大,请返回答案模 10^ ...
最新文章
- mysql 5.5.35 单机多实例配置详解_MySQL 5.5.35 单机多实例配置详解
- Spring 依赖注入(集合)/util命名空间/自动注入
- 获取响应里面的cookie的方法
- quartus仿真系列3:74283的4位并行加法器
- php curl 请求失败,PHP CURL库之GET、POST数据大小限制导致请求失败解决方案
- 统计github本地仓库的代码行数
- word文档通配符换行_Word文档每一行后面都有小箭头如何消除?
- OpenCV python 轮廓的极值点
- 第十二周项目四----利用遍历思想求解图问题之6最短路径
- Cesium|xt3d卫星正摄动画
- 金融安全算法介绍系列6——RSA
- dsp的ad标志位是什么_关于STM32 AD转换的ADC_FLAG_EOC标志位问题
- brpc源码学习(一)-butex
- 盘点 | 2020大数据十大关键词与趋势新鲜出炉
- IB交换机配置命令总结
- 计数器概念和异步二进制计数器
- SuperPoint:深度学习特征点+描述子
- 2022华为机试真题 C++ 实现【快速人名查找】
- 高速公路视频监控系统的Bypass 工业以太网交换机特点
- Typora教程2 | 偏好设置
热门文章
- Web GIS在人口统计学上的10种运用
- BST 递归实现二叉树: 插入 删除 查找
- h5响应式布局、PC和移动端适配方案
- 怎么用linux账号登录foxmail,Foxmail 7 发布:全面支持Exchange帐号
- 电动车Gogoro曲线上市:募资缩水超2亿美元 路演PPT曝光
- openssl qt 生成秘钥_OpenSSL证书生成(Windows环境)
- mysql显示各专业总人数_mysql实现每个专业分数段统计人数
- Linux 安装软件是错误:正在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程
- vant/vue——tab栏切换上下箭头功能实现
- jsp城乡信息管理系统