跟英雄哥学算法

编程入门 行业动态 更新时间:2024-10-28 13:26:58

跟英雄哥学<a href=https://www.elefans.com/category/jswz/34/1770096.html style=算法"/>

跟英雄哥学算法

645. 错误的集合 - 力扣(LeetCode) (leetcode-cn.com)

/*** Note: The returned array must be malloced, assume caller calls free().*/int cmp (const void *pa,const void*pb){return *(int*)pa - *(int*)pb;}
int* findErrorNums(int* nums, int numsSize, int* returnSize){int*ret =(int*)malloc(sizeof(int)*2);//一共两个元素我们就开辟两个动态内存空间qsort(nums,numsSize,sizeof(int),cmp);//排列成升序便于相邻两元素重复利于找出int i=0;int bfr =0;//定义一个本元素前面的元素,为了防止第一个元素就是丢失的数字我们将最开始设置为0for(i=0;i<numsSize;i++)//遍历整个数组{int tmp =nums[i];//定义一个变量防止本元素(防止循环体内改变循环变量)if(tmp==bfr){//两个元素相等,重复元素放在数组第一个位置ret[0]=bfr;}else if(tmp - bfr >1){//如果是错误元素则相邻两元素肯定相差2,前面的元素+1就是丢失的数字ret[1] = bfr+1;}bfr = nums[i];//查找完一次,查找下一个,然后将前面元素放置本元素,将本元素+1到下一个元素}if(nums[numsSize-1]!=numsSize)//如果最终都没有找到丢失的数字,那就是最后一个数字{ret[1] = numsSize;}*returnSize =2;return ret;
}

更多推荐

跟英雄哥学算法

本文发布于:2023-06-20 23:59:36,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/808902.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:算法   英雄

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!