剑指offer-数组中的重复的数字-p39

数组

c++中的STL中的vector
(STL中的vector每次扩容量时,新的容量都是之前一次的两倍)
在c/c++中,数组和指针是相互关联又有区别的两个概念。
关联:当我们声明一个数组时,其数组的名字也是一个指针,该指针指向数组的第一个元素。我们可以用一个指针来访问数组。

#include<iostream>
using namespace std;
int GetSize(int data[])
{return sizeof(data);
}
int main()
{int data1[]={1,2,3,4,5};int size1=sizeof(data1);int *data2=data1;int size2=sizeof(data2);int size3=GetSize(data1);cout<<size1<<","<<size2<<","<<size3<<endl;system("pause");
}

在这里插入图片描述
这里是因为作者的编辑环境是在win64,vscode编译器下。
data1是一个数组,sizeof(data1)是求数组的大小int类型的常量是占四个字节的,5*4=20;

data2声明为指针,尽管它指向了数组的第一个数字,但他的本质任然是一个指针,在64位操作系统上,对任意指针求sizeof,得到的结果都是8;

在c/c++中,当数组作为函数的参数进行传递时,数组就自动转换为同类型的指针。因此,尽管函数GetSize的参数data被声明为数组,但他会退化为指针,size3的结果为8;

题目1:找出数组中的重复的数字
在一个长度为n的数组里的所有数字都在0~n-1的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。
例如:如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3。

思路:
暴力的解法
1.排序 时间复杂度O(nlogn);
2.哈希表 空间复杂度O(n);

更好的解决方法:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/306732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

尝鲜!.NET5实操之docker+k8s,这10个坑,你不得不知!

2016年发布了.NET Core第一个正式版本&#xff0c;2020年11月.NET5也正式来临了&#xff0c;技术日新月异&#xff0c;也有点让人应接不暇。在框架设计上&#xff0c;.NET Framework的全家桶理念&#xff0c;培养了一大批的CRUD&#xff0c;而.NET Core转变成了按需使用(Pay fo…

jdk解压版_命令行版的斗地主你玩过没?

相信大家都玩过斗地主游戏&#xff0c;或在现实中斗地主或在电脑和手机上斗地主&#xff0c;但你想过用命令行界面进行斗地主吗&#xff1f;先来张图体验一下&#xff1a;是不是觉得挺有意思&#xff0c;下面就带大家一起玩一下吧~部署命令行版斗地主1 环境准备该项目是基于jav…

c语言——什么时候使用getchar()读取换行符

做题的时候有时会用到getchar()接收换行符&#xff0c;然而让人困惑的是一般使用scanf("%s", str)这样的形式读取字符串的时候似乎并没有考虑这个问题。网上通常会给你讲大道理缓冲区啥的&#xff0c;然后听懂后自己得不得的出结论全看天赋&#xff08;摊手&#xff…

[项目更新] 集成RabbitMQ队列与EventBus总线

&#xff08;Blog.Core框架开发情况&#xff0c;着色部分为本次新增&#xff09;终于项目继续迭代更新了&#xff0c;在开源这两年多&#xff0c;也是感谢每一个支持Blog.Core项目的同学&#xff0c;同时也感谢每一个在生产环境中使用&#xff0c;并提出意见和建议的小伙伴&…

cv2.imread读取图像结果none_python cv2.imread 读取中文路径的图片返回为None的问题

此篇文章首发于我的csdn博客&#xff0c;见原文链接。使用cv2读取图片是常见的事情&#xff0c;但如果&#xff0c;输出图片形状大小时出现报错“ NoneType object has no attribute shape”&#xff0c;后来排查发现读取图片的返回值image为None&#xff0c; 这就说明图片根本…

利用模板化应对ERP业务模型的快速变化

源宝导读&#xff1a;ERP这类复杂系统中&#xff0c;业务模型是系统功能的核心抽象&#xff0c;但业务模型对于不同的客户会有差异&#xff0c;也会随着业务发展而变化。虽然可以对业务组件进行复用&#xff0c;但客户定制的成本依然较高&#xff0c;本文将讨论如何利用模板化应…

mockmvc get请求 tm的 一直404_大家快来看看404的兄弟姐妹

码个蛋(codeegg)第 624 次推文作者&#xff1a;xiaoxiunique博客&#xff1a;https://juejin.im/post/5cd2ea425188254459335583做开发的我们肯定少不了跟网络数据打交道&#xff0c;我们都知道&#xff0c;我们进行网络请求&#xff0c;无论成功还是失败&#xff0c;后台都会给…

网传不要升级.NET5的诸多原因,你赞同几个?

.NET5正式发布有十多天&#xff0c;博客园、知乎、技术群都讨论的非常热烈。关于项目是否迁移.NET5的话题讨论的尤为热烈&#xff0c;作为.NET十年老司机要告诉你&#xff0c;.NET5的迁移势在必行&#xff0c;当下就是最好的时机&#xff01;犹豫项目是否升级到.NET5的&#xf…

WPF开发的实用小工具 - 快捷悬浮菜单

WPF开发的实用小工具 - 快捷悬浮菜单❝本文由网友投稿&#xff0c;Dotnet9站长整理。站长觉得这小工具很实用&#xff0c;站长家里、公司也在尝试使用了。行文目录&#xff1a;这工具有什么用&#xff1f;正文源码获取及应用下载体验站长的建议1. 这工具有什么用&#xff1f;问…

accdb原有的数据怎么清除_VBA中利用数组对数据批量处理的方法

大家好&#xff0c;今日继续和大家分享VBA编程中常用的常用"积木"过程代码。这些内容大多是我的经验和记录&#xff0c;来源于我多年的经验。今日分享的是NO.225-NO.226&#xff0c;内容是&#xff1a;NO. 225&#xff1a;数组的赋值和回填工作表NO. 226&#xff1a;…

云南河道 kml文件_处理能力提升 4 倍 ,大疆智图 4 天完成 5 公里河道建模

马陵河是江苏省宿迁市老城区一条重要排涝河道&#xff0c;1974 年人工开挖而成&#xff0c;全长 5.2 km&#xff0c;汇水面积 11.6 km&#xff0c;居住人口 13.85 万人。河道水质长期处于黑臭状态&#xff0c;严重影响周边居民日常生活&#xff0c;被称为宿迁的“龙须沟”。宿迁…

linq 查询的结果会开辟新的内存吗?

一&#xff1a;背景 1. 讲故事昨天群里有位朋友问&#xff1a;linq 查询的结果会开辟新的内存吗&#xff1f;如果开了&#xff0c;那是对原序列集里面元素的深拷贝还是仅仅拷贝其引用&#xff1f;其实这个问题我觉得问的挺好&#xff0c;很多初学 C# 的朋友或多或少都有这样的疑…

问题 B: 十进制到二进制的转换

这个问题我们来用栈来实现 首先&#xff0c;我们先定义一个栈的结构体&#xff08;栈的结构体与链表的结构体不可同&#xff0c;栈的结构体第二项是用int定义栈的顶端; 而链表的第二项&#xff0c;是用struct定义一个指针&#xff09; struct stack{int data[10005];int top;…

javascript内存泄漏调试工具mac_node.js 内存泄漏的秘密

一直以来&#xff0c;跟踪 Node.js 的内存泄漏是一个反复出现的话题&#xff0c;人们始终希望对其复杂性和原因了解更多。并非所有的内存泄漏都显而易见。但是&#xff0c;一旦我们确定了其模式&#xff0c;就必须在内存使用率&#xff0c;内存中保存的对象和响应时间之间寻找关…

Leansoft再发招贤令:面试官徐磊有话讲 | IDCF

&#xff08;图片来源于网络&#xff09;2020是Leansoft成立的第五年&#xff0c;凭借专业的服务及实施能力&#xff0c;逐渐成长为国内唯一的端到端专业DevOps实施服务公司。Leansoft是一家怎样的公司呢&#xff1f;准确地说&#xff0c;我们其实是国内唯一一家提供端到端的De…

问题 B: 数塔问题

题目描述 有如下所示的数塔&#xff0c;要求从顶层走到底层&#xff0c;若每一步只能走到相邻的结点&#xff0c;则经过的结点的数字之和最大是多少&#xff1f; 输入 第一行是一个整数N(1 < N < 20)&#xff0c;表示数塔的高度&#xff0c;接下来用N个数字表示数塔&a…

e盾服务端源码_gRPC服务注册发现及负载均衡的实现方案与源码解析

今天聊一下gRPC的服务发现和负载均衡原理相关的话题&#xff0c;不同于Nginx、Lvs或者F5这些服务端的负载均衡策略&#xff0c;gRPC采用的是客户端实现的负载均衡。什么意思呢&#xff0c;对于使用服务端负载均衡的系统&#xff0c;客户端会首先访问负载均衡的域名/IP&#xff…

堆问题(最小堆变最大堆,堆删除,中序遍历)

2-6 设最小堆&#xff08;小根堆&#xff09;的层序遍历结果为 {8, 38, 25, 58, 52, 82, 70, 60}。用线性时间复杂度的算法将该堆调整为最大堆&#xff08;大根堆&#xff09;&#xff0c;然后连续执行两次删除最大元素操作&#xff08;DeleteMax&#xff09;。则该树的中序遍历…

推荐一款.NET Core开源爬虫神器:DotnetSpider

没有爬虫就没有互联网&#xff01;爬虫的意义在于采集大批量数据&#xff0c;然后基于此进行加工/分析&#xff0c;做更有意义的事情。谷歌&#xff0c;百度&#xff0c;今日头条&#xff0c;天眼查都离不开爬虫。去开源中国和Github查询C#的爬虫项目&#xff0c;仅有几个非常简…

Excel学习使用教程

1.Excel的保存与加密 加密&#xff1a; 我设置的密码&#xff1a;517485