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

网站开发中使用框架吗友链大全

网站开发中使用框架吗,友链大全,禅城网站建设费用,企业营销是啥意思题目:力扣-448 给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。 把数组中存在[1…n]的元素放其元素值-1的位置上,第一个fo…

题目:力扣-448

给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。

把数组中存在[1…n]的元素放其元素值-1的位置上,第一个for循环结束得到一个:nums[i] - 1 == i,(若数组中存在该元素)

int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize) {for (int i = 0; i < numsSize; i++) {int t = nums[i];int k = nums[t - 1];while (t != k) {nums[t - 1] = t;t = k;k = nums[t - 1];}}*returnSize = 0;int *result = (int*)malloc(numsSize * sizeof(int));for (int i = 0; i < numsSize; i++) {if (nums[i] != (i + 1)) {result[(*returnSize)++] = i + 1;}}return result;
}

时间复杂度:O(n)
空间复杂度:O(n)

优化程序
每遍历一个元素t,就把nums[t-1]处的元素值加上n,直到for循环结束,使nums数组中存在[1…n]范围内的数字都大于n,第二个for循环遍历nums数组,把其中大于n的数字,加入数组result中。

int* findDisappearedNumbers(int* nums, int numsSize, int* returnSize) {for (int i = 0; i < numsSize; i++) {int t = (nums[i] - 1) % numsSize;nums[t] += numsSize;}int* result = malloc(sizeof(int) * numsSize);*returnSize = 0;for (int i = 0; i < numsSize; i++) {if (nums[i] <= numsSize) {result[(*returnSize)++] = i + 1;}}return result;
}

时间复杂度:O(n)
空间复杂度:O(n)

http://www.ysxn.cn/news/689.html

相关文章:

  • 网站建设需求确定陕西企业网站建设
  • 滨州北京网站建设价格低宣传平台有哪些
  • 手机网站建设的重点步骤百度seo点击器
  • 做网站租用数据库搜索网站的软件
  • 网站做的app有哪些网络营销师报考条件
  • 网站更改模板 seo宁波seo推广费用
  • 展示型网站都包括什么模块网站流量来源
  • 西安网站建设公河南省干部任免最新公示
  • 网站网页设计在哪找怎么样在百度上推广自己的产品
  • 江西网站开发科技公司十大计算机培训学校
  • 微信如何做模板下载网站苏州网站建设
  • 网站综合排名信息查询长沙百度百科
  • 网站制作完成后如何发布百度推广有效果吗?
  • 做网站设计怎么样郴州seo快速排名
  • 贵州做农业网站seo交流博客
  • 果洛州商城网站建设长沙网站推广服务公司
  • java可以做网站么国家高新技术企业名单
  • 淄博网站排名优化公司网络公司优化关键词
  • 做视频网站玩什么配置怎样淘宝seo排名优化
  • 福州做网站的公司多少钱长沙seo网站
  • wordpress云建站小红书推广引流
  • 网页设计的基本原则百度推广关键词优化
  • 左右网站模版平台推广费用一般是多少
  • 中小企业网站建设与管理主要讲授什么东莞网络营销代运营
  • 学校专业群建设专题网站本周新闻热点10条
  • 天津建筑工程信息seo外链平台热狗
  • 网页制作与网站建设自考推广拉新任务的平台
  • pc网站怎么建设流程网站注册域名
  • 甘肃再就业建设集团网站营销型网站建设团队
  • 店面门头设计网站b站2023年免费入口