每日一题---存在重复元素(1)和(2)

文章目录

  • 一、存在重复数组
  • 1,1.题目展示
  • 1.2.解题思路
    • 1.3.参考代码
  • 二、存在重复元素||
  • 2.1.题目展示
    • 2.2.解题思路
    • 2.3.参考代码


在这里插入图片描述

大家学习完了数组,指针等内容可以进行刷题了,刷题不仅可以增加大家的代码量,也可以积累自己的经验,言归正传,下面我们讲解这两道题。
存在重复数组
存在重复数组||


一、存在重复数组

1,1.题目展示

在这里插入图片描述

1.2.解题思路

方法颇多,仅供参考:
大家看到这道题,可能会觉得比较简单,意思就是一个数组如果有个数字出现的次数超过了2次,甚至更多,那便是True;如果所有的数字只出现了一次,那么就是False。
那么先排序,然后判断这个数字跟自己后一个数字是否一样,如果是则返回True,如果遍历了一遍,没有的话,返回False。

1.3.参考代码

我使用的排序是C语言stdlib.h库中自带的qsort函数,其底层逻辑是快速排序,如果想了解qsort函数,大家可以看指针–五,或者查询官方文件cpluscplus官方文件https://legacy.cplusplus.com/reference/clibrary/

int cmp(int* a,const int* b)
{return *a-*b;
}bool containsDuplicate(int* nums, int numsSize) {qsort(nums,numsSize,sizeof(int),cmp);for(int i=0;i<numsSize-1;i++){if(nums[i]==nums[i+1])return true;}return false;
}

二、存在重复元素||

2.1.题目展示

在这里插入图片描述

2.2.解题思路

这个题看完,也会觉得思路不难,只是比上一道题难点。
满足要求:两个值一样,并且这个数所在的数组下标的差值需要小于K(指定的值)。
那么首先还是老套路,进行排序,然后,在这个题中数组的下标和值使用结构体,进行分开,然后在列出是否满足要求,满足则返回True,不满足返回False。

2.3.参考代码

typedef struct
{int val;int index;
}Lax;
int cmp(const void*a,const void*b)
{return (*(Lax*)a).val-(*(Lax*)b).val;
}
bool containsNearbyDuplicate(int* nums, int numsSize, int k) {if(numsSize<=1)return false;Lax arr[numsSize];int i=0;for(i=0;i<numsSize;i++){arr[i].val=nums[i];arr[i].index=i;}qsort(arr,numsSize,sizeof(Lax),cmp);for(i=1;i<numsSize;i++){if(arr[i].val==arr[i-1].val)if(abs(arr[i].index-arr[i-1].index)<=k)return true;}return false;
}

这个代码所说运行效率不高,但是代码的可读性挺高的,适合初学者


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

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

相关文章

C语言之指针的指向地址和指针的内容总结(八十九)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

量化交易入门(三十九)怎么获取A股历史数据

前面我们都是以美股的苹果股票为例进行策略和技术指标的回测&#xff0c;量化交易对中国A股是否适用呢&#xff1f;我们怎么样免费获取A股的股票数据呢&#xff1f;我给你们介绍三个免费的数据平台Tushare 、AkShare和Baostock。 1、Tushare Tushare是一个免费、开源的Pytho…

HashMap 和 Hashtable 有什么区别?

HashMap和Hashtable在Java中都是用于存储键值对的集合&#xff0c;但它们之间存在几个重要的区别。 线程安全性&#xff1a; Hashtable是线程安全的。这意味着多个线程可以同时操作Hashtable&#xff0c;而不会出现数据不一致的情况。但是&#xff0c;这种线程安全性的代价是降…

基于决策树算法的糖尿病遗传风险预测研究

基于决策树算法的糖尿病遗传风险预测研究 一、引言 糖尿病是一种常见的慢性疾病&#xff0c;全球范围内患病率持续上升。遗传因素在糖尿病的发病中起着重要作用&#xff0c;因此&#xff0c;预测糖尿病的遗传风险对于早期预防、诊断和治疗具有重要意义。本研究旨在利用决策树…

2023年第十四届蓝桥杯 - 省赛 - Python研究生组 - A.工作时长

题目 数据文件&#xff1a;https://labfile.oss.aliyuncs.com/courses/21074/records.txt Idea 直接通过 datetime 模块加载时间字符串进行格式化&#xff0c;然后对时间列表进行排序&#xff0c;最后两两计算时间差。 Code Python from datetime import datetimetime_lis…

深入浅出Prim算法和Kruskal算法求最小生成树算法

深入浅出Prim算法和Kruskal算法求最小生成树&#xff1a; Prim算法 ​ 首先初始化距离 正无穷。 ​ n 次迭代(因为要选中n个点)&#xff0c;找到不在集合(当前生成树)中的且距离当前块最小的点(记作)m点&#xff0c;&#xff0c;用m点去更新其他掉到集合中的点的距离&#x…

目标检测——服饰属性标签识别数据集

一、重要性及意义 首先&#xff0c;随着电商、时尚推荐等业务的发展&#xff0c;服饰属性标签识别已经成为一项关键的计算机视觉任务。这些标签&#xff0c;如颜色、款式、材质等&#xff0c;对于实现图像搜索、时尚推荐等业务需求至关重要。服饰属性标签识别数据集为此类任务…

Excel 数据-分列的三个经常用法

Case 1 &#xff1a;有时候数据导出时如果没有电子表格的话&#xff0c;只能导出本地文件&#xff0c;如下图情况&#xff1a; 可以使用数据-分列处理数据&#xff1a; 原来是因为SAP导出数据没有完成的原因&#xff0c;或者关闭Excel重新打开试一下。 重新打开后可以输入了 C…

HarmonyOS Connect生态设备UX体验设计

HarmonyOS Connect生态设备UX体验设计 HarmonyOS Connect是华为推出的面向万物互联时代的设备连接与互操作解决方案&#xff0c;旨在打破设备之间的壁垒&#xff0c;提供无缝、便捷的用户体验。 HarmonyOS Connect生态设备UX体验设计的基本原则包括&#xff1a; 一致性&…

Kubernetes activemq artemis系列 | k8s部署artemis主从 v2.33.0

主从配置直通车 本文提供了yaml可直接使用&#xff08;镜像是自己构建的&#xff09; amqmaster.yaml apiVersion: apps/v1 kind: StatefulSet metadata:name: artemismasterlabels:app: artemisbroker: master spec:serviceName: artemismasterreplicas: 1selector:matchLa…

python3GUI--不同样式的登录注册界面By:PyQt5(附下载地址)

文章目录 一&#xff0e;前言二&#xff0e;介绍&效果展示界面一1.注册2.登录3.切换效果 界面二1.注册2.登录3.切换效果 界面三1.注册3.登录3.切换效果 界面四1.注册2.登录3.切换效果 界面五1.注册2.登录3.切换效果 界面六1.注册2.普通登录3.快捷登录4.切换效果 界面七1.登…

网络检测与监控

1.IP sla 服务等级质量检测&#xff0c;思科私有&#xff0c;提供商与用户之间的协议 可以对带宽、延迟、丢包率、网络抖动进行检测 &#xff08;1&#xff09;针对icmp进行检测&#xff1a; r1(config)#ip sla 1 r1(config-ip-sla)#icmp-echo 12.12.12.2 source-ip 12.12…

在决策上,我不随便给别人建议

在决策上&#xff0c;我不随便给别人建议 之前看过一个视频&#xff0c;视频中主人公说**「我不随便给别人决策上的建议&#xff0c;我何德何能&#xff0c;自己还没活明白呢&#xff0c;给别人建议干啥。」** 这句话我挺认同的。 如果我自己很成功&#xff0c;那一定是靠你自…

基于FPGA的HDMI方块移动程序设计

前面写了一篇关于HDMI视频接口的文章《基于FPGA的HDMI视频接口的设计》&#xff0c;该文章对HDMI的相关知识点做了讲解&#xff0c;这里不再重复&#xff0c;本篇文章直接实现一个简单功能-方块的移动。 该系统程序主要实现的功能就是通过串口下发指令控制方块的位置移动&…

Docker基础系列之TLS和CA认证

Docker基础系列之TLS和CA认证 文章目录 Docker基础系列之TLS和CA认证1. 引言2. 初识TLS和CA3. 开启TLS和CA认证3.1 生成证书3.2 配置TLS 4. 参考和感谢 1. 引言 我们日常工作当中会遇到这些需求&#xff1a; 监控Docker容器在idea开发工具中连接Docker&#xff0c;直接发布至…

手搓Docker-Image-Creator(DIC)工具(03):实现alpine+jre的镜像

此篇博客将介绍如何使用 Docker 创建一个alpine3.10-jre1.8.0_401 的 Docker 镜像&#xff0c;并使用 Docker 运行起来。将用到 Dockerfile 的 COPY 命令、RUN 命令、ENV 命令&#xff0c;最终实现基于单一应用的 Dockerfile 构建镜像和运行。 紧急修改&#xff1a;代码我是在m…

【机器学习300问】60、图像分类任务中,训练数据不足会带来什么问题?如何缓解图像数据不足带来的问题?

在机器学习中&#xff0c;绝大部分模型都需要大量的数据进行训练和学习&#xff08;包括有监督学习和无监督学习&#xff09;&#xff0c;然而在实际应用中经常会遇到训练数据不足的问题。就比如图像分类这样的计算机视觉任务&#xff0c;确实依赖于大规模且多样化的训练数据以…

云数据中心传输的出路

研发端到端协议不是出路&#xff0c;研发更智能调度流量的交换机不是出路&#xff0c;将流量按长短突发模式分流到不同链路(逻辑的或物理的)才是出路。所有高速传输的前提是标准化&#xff0c;统一简单的操作。多么简单的领悟。 数据中心网络具有范围小&#xff0c;带宽大&…

FFmpeg 详解

FFmpeg 详解 FFmpeg 详解整体结构不同下载版本的区别常用库常用函数初始化封装格式解码器 版本对比组件注册方式对比FFmpeg 3.x 组件注册方式FFmpeg 4.x 组件注册方式 结构体比对函数对比avcodec_decode_video2()vcodec_encode_video2() 数据结构结构体分析AVFormatContextAVIn…

什么是原生IP?原生IP的作用是什么?

原生IP&#xff08;Native IP&#xff09;是指直接从互联网服务提供商&#xff08;ISP&#xff09;获得的IP地址&#xff0c;而非通过代理服务器、VPN或其他中间层方式获取。这种IP地址直接与用户的设备或网络关联&#xff0c;无需经过任何中间服务器或代理的转发或隐藏&#x…