当前位置: 首页 > news >正文

佛山做营销型网站建设云搜索下载

佛山做营销型网站建设,云搜索下载,社交源码,棋牌网站怎么做👻内容专栏:《Leetcode刷题专栏》 🐨本文概括: 面试17.04.消失的数字 🐼本文作者:花 碟 🐸发布时间:2023.4.10 目录 思想1:先排序再查找 思想2:异或运算 代…

👻内容专栏:《Leetcode刷题专栏》

🐨本文概括: 面试17.04.消失的数字

🐼本文作者:花 碟

🐸发布时间:2023.4.10

目录

思想1:先排序再查找

思想2:异或运算

代码实现: 

思想3:等差数列求和相减

代码实现: 


 

点击跳转到Leetcode的OJ平台 17.04 消失的数字  

题目:

数组nums包含从0n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间完成吗?

int missingNumber(int* nums, int numsSize);

示例1:

 示例2:

 分析:

1.数组中经过排列后是一串有序列的整数,只不过序列中缺失了一个整数,题目需要让你找出这个缺失的数字

2.时间复杂度要求允许在O(n)范围内

思想1:先排序再查找

首先,我们就可以想到将数组nums里的元素进行排序,然后进行依次查找,如果下一个数不是上一个数+1得到的,那么上一个数+1就是我们要找的消失的数字。这题,按道理可以这么去写。

但是,观察各类常见的排序算法的时间复杂度详解图,最坏情况达不到我们该题要求的时间复杂度之内,在这里我们去运用排序,并不太合适。

各类排序时间复杂度对比
类别排序方法时间复杂度
平均情况最好情况最坏情况
插入排序直接插入O(n²)O(n)O(n²)
希尔排序O(n¹·³)O(n)O(n²)
选择排序直接排序O(n²)O(n²)O(n²)
堆排序O(nlog₂n)O(nlog₂n)O(nlog₂n)
交换排序冒泡排序O(n²)O(n)O(n²)
快速排序O(nlog₂n)O(nlog₂n)O(n²)
归并排序O(nlog₂n)O(nlog₂n)O(nlog₂n)
基数排序O(d(r+n))O(d(n+rd))O(d(r+n))
注:基数排序的复杂度中,r代表关键字的基数,d代表长度,n代表关键字的个数

 接下来,我们寻找其他方法击破此题。

思想2:异或运算

我们利用异或运算的规则(相同为0,相异为1),我可以先让一个变量x,初始值为0,与数组nums中numSize个元素进行异或运算,最后再与0 ~ numSize循环遍历的值进行异或,就能够得到是一个落单的数字,也就是我们最后要找的“消失的数字

代码实现: 

int missingNumber(int* nums, int numsSize){int i = 0;int x = 0;for(i = 0;i < numsSize;i++){x ^= nums[i];}for(i = 0;i <= numsSize;i++){x ^= i;}return x;
}

思想3:等差数列求和相减

我们可以写一个循环计算0~numSize所有数字之和,0到numSize个数字本质也是一个等差数列,也可以使用等差数列求和公式,得出一个sum1值。继续求出nums数组中所有整数之和,得出一个sum2值。sum1减去sum2得到的数字就是“消失的数字

代码实现: 

int missingNumber(int* nums, int numsSize){int i = 0;int sum1 = (1 + numsSize)*numsSize / 2;int sum2 = 0;for(i = 0;i < numsSize;i++){sum2 += nums[i];}return sum1 - sum2;
}


🤗🤗 好啦,本篇文章的创作就到此为止啦,如有不当,还请私信我纠正哦~

http://www.zhongyajixie.com/news/62192.html

相关文章:

  • 网站建设的技术团队友链申请
  • wordpress修改用户名密码seo是什么专业的课程
  • 承德网站网站优化塔山双喜
  • 免费网站模块百度竞价托管外包
  • 建网站有什么用semiconductor
  • 东坑网站建设公司平台推广费用一般是多少
  • 安徽党组织标准化建设网站设计网络推广方案
  • 怎么建立一个简易的网站新闻头条今日新闻下载
  • 网站首页为什么不收录常用的网络推广方法有哪些
  • 国税网站页面申报撤销怎么做外链屏蔽逐步解除
  • 韶关营销型网站建设谷歌seo价格
  • 数据图表展示网站百度搜索量查询
  • 洛阳平台公司网站seo课程
  • 网站开发在线测试平台如何进行网站宣传推广
  • fontawesome 网站谷歌浏览器 官网下载
  • 做网站资讯运营视频推广
  • 江苏高效网站制作公司漳州seo网站快速排名
  • 网页加速器免费版 安卓优化疫情政策
  • vs2017 如何做网站什么是seo教程
  • 网站建设工作室需要哪些设备2022年最火文案
  • 做服装搭配的流行趋势网站淄博网站seo
  • 示范校建设验收网站移投界seo
  • 网站备案怎样提交到管局惠州seo招聘
  • 企业网站开发论文长春网站建设定制
  • 网站怎么做301重定向自己制作一个网页
  • 网站建设价格为何相差甚大徐州seo外包公司
  • 网站 wordpress网络营销策划书范文模板
  • 南皮 网站网络游戏推广
  • 网络营销导向企业网站建设的原则包括深圳企业黄页网
  • wordpress 哪个主题杭州网站优化方案