每日一题---存在重复元素(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;多媒…

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

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

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

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

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

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

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.登…

基于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…

[Java基础揉碎]枚举

目录 先看一个需求 枚举介绍: 枚举实现的方式: >自定义类实现枚举实例: >使用enum关键字实现枚举 ​编辑 enum关键字实现枚举注意事项 enum常用方法 enum细节 先看一个需求 要求创建季节(Season)对象&#xff0c;请设计并完成。 // 传统的方法建造一个类: clas…

5.vector容器的使用

文章目录 vector容器1.构造函数代码工程运行结果 2.赋值代码工程运行结果 3.容量和大小代码工程运行结果 4.插入和删除代码工程运行结果 5.数据存取工程代码运行结果 6.互换容器代码工程运行结果 7.预留空间代码工程运行结果 vector容器 1.构造函数 /*1.默认构造-无参构造*/ …

第十三届蓝桥杯JavaA组省赛真题 - 求和

解题思路&#xff1a; 这&#xff0c;真的是&#xff0c;省赛真题吗... public class Main {public static void main(String[] args) {long res 0;for (int i 1; i < 20230408; i) {res i;}System.out.print(res);} }

C#学习笔记 面试提要

冒泡 for (int m 0; m < arr.Length; m) { for (int n 0; n < arr.Length - 1 - m; n) { if (arr[n] > arr[n1]) { int temp arr[n]; arr[n] arr[n 1]; arr[n1] temp; } } } 选择 for (int m 0; m < arr.Length; m) { int index 0; for (int n 1; n < …

企业安全体系建设的实践指南:策略制定与实施细节

在网络安全行业&#xff0c;安全Web漏洞挖掘工程师已经层出不穷&#xff0c;然而拥有甲方安全建设经验的工程师相对较为稀缺。在企业招聘安全工程师时&#xff0c;除了对安全漏洞挖掘能力的重视&#xff0c;更加关注是否具备甲方安全体系建设方面的思维。 本次分享聚焦于甲方安…

PyCharm中配置PyQt5并添加外部工具

Qt Designer、PyUIC和PyRcc是Qt框架下的三个重要工具&#xff0c;总的来说&#xff0c;这三个工具各司其职&#xff0c;相辅相成&#xff0c;能显著提升Qt开发的速度与效率。 Qt Designer&#xff1a;是一个用于创建图形用户界面的工具&#xff0c;可轻松构建复杂的用户界面。…

面试智力题

面试智力题 二进位bit1. 题目&#xff1a;一千杯水&#xff0c;一杯水有毒&#xff0c;怎么用10只老鼠&#xff0c;把这杯水找出来&#xff08;1&#xff09;解法1&#xff1a;常规法&#xff08;2&#xff09;bit法&#xff08;位数法&#xff09; (3) 时间法三级目录 二进位b…

pygame的搭建

pygame的介绍与环境搭建 Pygame模块 安装 WindowsR打开命令窗口&#xff0c;输入&#xff1a; pip install pygame 或者安装指定版本 pip install pygame 2.3.0常用模块 在Pygame框架中有很多模块&#xff0c;官方网址pygame news 。 其中最常用模块的具体说明如下表所示…