【每日刷题】Day76

news2024/12/23 19:39:05

【每日刷题】Day76

🥕个人主页:开敲🍉

🔥所属专栏:每日刷题🍍

🌼文章目录🌼

1. 561. 数组拆分 - 力扣(LeetCode)

2. 删除有序链表中重复的元素-II_牛客题霸_牛客网 (nowcoder.com)

3. 645. 错误的集合 - 力扣(LeetCode)

1. 561. 数组拆分 - 力扣(LeetCode)

//思路:排序。我们仔细研究题目的要求不难发现,想要满足要求,只需要将这n对数据中的每一对数据差值的绝对值最小,然后加上每一对数据中的较小值即可。

//记数排序

void CountSort(int* arr,int size)

{

    int max = -100000;

    int min = 100000;

    for(int i = 0;i<size;i++)

    {

        if(arr[i]>max)

            max = arr[i];

        if(arr[i]<min)

            min = arr[i];

    }

    int* hash = (int*)calloc(max-min+1,sizeof(int));

    for(int i = 0;i<size;i++)

    {

        hash[arr[i]-min]+=1;

    }

    int count = 0;

    for(int i = 0;i<max-min+1;i++)

    {

        while(hash[i])

        {

            arr[count++] = i+min;

            hash[i]--;

        }

    }

}


 

int arrayPairSum(int* nums, int numsSize)

{

    int ans = 0;

    CountSort(nums,numsSize);

    for(int i = 0;i<numsSize;i+=2)

    {

        ans+=nums[i];

    }

    return ans;

}

2. 删除有序链表中重复的元素-II_牛客题霸_牛客网 (nowcoder.com)

//思路:哈希记数。遍历链表,将链表中所有元素的出现次数记录,随后遍历哈希数组,只将val为1的key放入链表中。

typedef struct ListNode LN;

struct ListNode* deleteDuplicates(struct ListNode* head )

{

    if(!head)

        return NULL;

    LN* pmove = head;

    int max = -100000000;

    int min = 1001;

    while(pmove)//求链表的最大最小值,以应对key为负数的情况

    {

        if(pmove->val>max)

            max = pmove->val;

        if(pmove->val<min)

            min = pmove->val;

        pmove = pmove->next;

    }

    int* hash = (int*)calloc(max-min+1,sizeof(int));

    pmove = head;

    while(pmove)

    {

        hash[pmove->val-min]+=1;//将pmove->val - min使负数变为正数(下标不能为负数)

        pmove = pmove->next;

    }

    pmove = head;

    for(int i = 0;i<max-min+1;i++)

    {

        if(hash[i]==1)//只保留出现一次的元素

        {

            pmove->val = i+min;

            pmove = pmove->next;

        }

    }

    if(pmove==head)

        return NULL;

    LN* pmove1 = head;

    while(pmove1->next!=pmove)//在原链表的基础上改动,不额外创建链表。

    {

        pmove1 = pmove1->next;

    }

    pmove1->next = NULL;

    return head;

}

3. 645. 错误的集合 - 力扣(LeetCode)

//思路:哈希记数。

int* findErrorNums(int* nums, int numsSize, int* returnSize)

{

    int* ans = (int*)calloc(2,sizeof(int));

    int* hash = (int*)calloc(numsSize+1,sizeof(int));

    for(int i = 0;i<numsSize;i++)

    {

        hash[nums[i]]+=1;//记数

    }

    for(int i = 1;i<numsSize+1;i++)

    {

        if(hash[i]==2)//重复出现的元素

            ans[0] = i;

        if(!hash[i])//未出现的元素

            ans[1] = i;

        if(ans[0]&&ans[1])

            break;

    }

    *returnSize = 2;

    return ans;

}

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

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

相关文章

多接口分线盒在工业自动化中的重要性与应用

简介 多接口分线盒是现代工业自动化中不可或缺的一个组成部分&#xff0c;它主要用于简化复杂的接线系统&#xff0c;提高效率和可靠性。本文将详细探讨多接口分线盒的定义、功能、以及在工业自动化中的应用情况。 无源多接口分线盒 多接口分线盒的定义与功能 多接口分线盒是…

vue draggable

一、安装&#xff1a; npm i -S vuedraggablenext 二、代码 <draggable :list"projectOptions" item-key"name" class"w-25" ghost-class"ghost"chosen-class"chosen" update"updateSort" animation"3…

Ubuntu系统安装软件---以安装QQ为例

以安装QQ为例&#xff0c;首先你的Ubuntu系统需要连上网&#xff0c;连上网的网络状态如下图所示。 在ubuntu系统的网页中搜索QQ&#xff0c;如下图所示。 进入QQ官网&#xff0c;点击Linux&#xff0c;如下图所示。 随后会让你选择什么架构的版本&#xff0c;如何查看自己的是…

金融企业数据跨境流动的核心需求是什么?如何才能落地?

在金融行业&#xff0c;涉及到的数据跨境流动的场景多种多样&#xff0c;主要涉及到金融机构的跨国经营、全球贸易以及服务贸易等多个方面&#xff1a; 企业跨国经营&#xff1a;当金融机构进行跨国经营时&#xff0c;如银行在海外设立分支机构或进行跨境投资&#xff0c;会涉及…

神经网络学习8-反向传播

back propagation 拿到前面传回来的L对z的偏导&#xff0c;再分别算损失值对x和w的偏导 反向传播 前馈过程求局部梯度 反向传播 这里的loss&#xff08;wxb-y)^2,第一个关于b的偏导为2(wxb-y),第二个关于w的为2w(wxb-y)

记录待办事项的便签软件哪个好用?

在快节奏的现代生活中&#xff0c;我们经常需要处理各种各样的待办事项&#xff0c;为了更好地管理时间&#xff0c;许多人选择使用便签软件来记录自己的待办事项。那么&#xff0c;记录待办事项的便签软件哪个好用&#xff1f;市面上众多的便签软件中&#xff0c;哪一个才是最…

【新闻】金融专业“免进”!私募巨头招聘涌现“新剧情”

A股市场在2024年逐渐出现新的运行特征&#xff0c;这不禁让部分主动投资的私募巨头公司重新登上招聘舞台。 但这一次&#xff0c;他们的招聘方向出现了新的变动。 有些机构有意识的为公司投研团队招聘“衔接”岗&#xff0c;有些则把重点放在了投研动作的交易层。 但这都不如…

社区团购小程序开发

在快节奏的现代生活中&#xff0c;人们越来越追求便利与效率。社区团购小程序应运而生&#xff0c;以其独特的优势成为连接社区居民与优质商品的重要桥梁。本文将探讨社区团购小程序的特点、优势以及未来发展趋势&#xff0c;为大家揭示这一新型购物模式的魅力。 社区团购小程序…

Superset二次开发之导入导出功能源码解读

可导出的类型 支持 看板(Dashboard)、图表(Charts)、数据集(Datasets)、SQL(saved_query)、数据库(Database connection) 单次或批量的导出,和单次导入操作 看板(Dashboard) 图表(Charts) 数据集(Datasets) SQL (saved_query) 数据库(database connections)…

为什么需要对数据质量问题进行根因分析?根因分析该怎么做?

在当今的商业环境中&#xff0c;数据已成为企业决策的核心。然而&#xff0c;数据的价值高度依赖于其质量。低质量的数据不仅会降低分析的准确性&#xff0c;还可能导致错误的决策&#xff0c;从而影响企业的竞争力和市场表现。因此&#xff0c;识别和解决数据质量问题是数据管…

定制汽车霍尔传感器应用及特点

霍尔传感器定制概览 霍尔传感器是一种广泛应用于汽车领域的磁性传感器&#xff0c;其工作原理基于霍尔效应&#xff0c;能够将磁场的变化转换为电信号输出。在汽车行业中&#xff0c;霍尔传感器因其高精度、稳定性和无接触式测量的特点而被广泛应用于发动机控制、自动变速控制…

推荐5款学习工作效率工具

Online AudioConvert Online AudioConvert 是一个在线音频格式转换工具&#xff0c;支持多种音频和视频文件格式的转换。用户可以将音频文件从一种格式转换为另一种格式&#xff0c;例如从 MP3 转换为 WAV 或从视频中提取音频。该工具无需注册、安装或文件大小限制&#xff0c;…

华为交换机的堆叠-Stack配置(基于业务口普通线缆的堆叠配置)

不想看原理请跳过一、二、三、四&#xff0c; 直接到配置五&#xff0c;干完活有时间在慢慢看原理。 一、什么是堆叠-Stack 指将多台交换机通过堆叠线缆连接在一起&#xff0c;逻辑上变成一台交换设备&#xff0c;作为一个整体参与数据转发。即&#xff1a;1 1 一 二、堆叠…

腾讯地图撒点并默认显示点位信息

实现步骤如下&#xff1a; 1、注册腾讯位置服务账号并获取 Key 2、需要创建一个地图容器&#xff0c;并使用腾讯地图的 API 初始化地图。通常涉及到设置地图的中心点、缩放级别和地图样式。 map new TMap.Map(document.getElementById(‘container’), { center: center, zo…

字符串匹配 --- BF算法 KMP算法

Welcome to 9ilks Code World (๑•́ ₃ •̀๑) 个人主页: 9ilk (๑•́ ₃ •̀๑) 文章专栏&#xff1a; 算法Journey 本篇博客我们将介绍关于字符串匹配的BF算法以及KMP算法&#xff0c;请放心食用~ &#x1f3e0; 字符串匹配 假设有一个字符串为主串str&#x…

【大模型】大模型微调方法总结(三)

1. Prefix-tuning 1.背景 2021年论文《Prefix-Tuning: Optimizing Continuous Prompts for Generation》中提出了 Prefix Tuning 方法。与Full-finetuning 更新所有参数的方式不同&#xff0c;该方法是在输入 token 之前构造一段任务相关的 virtual tokens 作为 Prefix&#x…

【数据结构】带头双向循环链表的实现及链表顺序表的区别

目录 一、带头双向循环链表接口实现 连接关系&#xff1a; 创建哨兵位&#xff08;表头&#xff09;&#xff1a; 头插——头删&#xff1a; 尾插——尾删&#xff1a; 查找——打印&#xff1a; 指定位置pos前插入&#xff0c;删除pos位置&#xff1a; 链表销毁&#x…

springboot解析自定义yml文件

背景 公司产品微服务架构下有十几个模块&#xff0c;几乎大部分模块都要连接redis。每次在客户那里部署应用&#xff0c;都要改十几遍配置&#xff0c;太痛苦了。当然可以用nacos配置中心的功能&#xff0c;配置公共参数。不过我是喜欢在应用级别上解决问题&#xff0c;因为并不…

“管式加热炉简单控制系统和串级控制系统设计与Matlab仿真”,高分资源,匠心制作,下载可用。强烈推荐!!!

“管式加热炉简单控制系统和串级控制系统设计与Matlab仿真”毕业设计&#xff0c;高分资源&#xff0c;匠心制作&#xff0c;下载可用。强烈推荐&#xff01;&#xff01;&#xff01; 1.控制目标 加热炉的任务是把原油加热到一定温度&#xff0c;以保证下道工艺的顺利进行。…

【C语言】解决C语言报错:Double Free

文章目录 简介什么是Double FreeDouble Free的常见原因如何检测和调试Double Free解决Double Free的最佳实践详细实例解析示例1&#xff1a;重复调用free函数示例2&#xff1a;多次释放全局变量指针示例3&#xff1a;函数间传递和释放指针 进一步阅读和参考资料总结 简介 Doub…