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

零基础学建网站百度权重查询爱站网

零基础学建网站,百度权重查询爱站网,中英文外贸网站模板,做平面的公司网站链接奉上:合并两个有序数组 目录 直接合并后排序:思路:代码实现: 双指针思路:代码实现: 直接合并后排序: 思路: 将nums2直接合并到nums1后边,并进行排序 代码实现&…

链接奉上:合并两个有序数组
在这里插入图片描述

目录

  • 直接合并后排序:
    • 思路:
    • 代码实现:
  • 双指针
    • 思路:
    • 代码实现:

直接合并后排序:

思路:

将nums2直接合并到nums1后边,并进行排序

代码实现:

#include<stdlib.h>int cmp(void* e1,void* e2)
{return *((int*)e1)-*((int*)e2);
}void merge(int* nums1,int numsSize1, int m,int* nums2, int numsSize2,int n)
{int j = 0;for(int i = m; i < numsSize1;i++){nums1[i] = nums2[j++];}qsort(nums1,numsSize1,4,cmp);
}

双指针

思路:

我们发现nums1nums2已经是排序了的。
为了利用这一性质,我们可以使用双指针方法。
这一方法将两个数组看作队列,每次从两个数组头部取出比较小的数字放到结果中。

代码实现:

初版:

void merge(int* nums1,int numsSize1, int m,int* nums2, int numsSize2,int n)
{int arr[numsSize1];int count1 = 0;int count2 = 0;int i = 0;if(n < 1)//若n<1,进行判断时会发生越界现象;else{while(1){   //当count1+count2相加等于numssize1说明数组arr已经装满了//就可以跳出循环if(count1 + count2 == numsSize1){break;}//这两个goto语句是为了防止nums1超出m时后会判断失误//或者nums2超出n时越界if(count1 == m)goto flag2;if(count2 == n)goto flag1;if(nums1[count1] <= nums2[count2]){flag1:arr[i++] = nums1[count1++];}else{flag2:arr[i++] = nums2[count2++];}}for(int i = 0; i < numsSize1; i++){nums1[i] = arr[i];}}
}

进阶版:
我们发现初版的代码包含了goto语句,逻辑判断也比较令人摸不到头脑
于是

void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n) {int p1 = 0, p2 = 0;int sorted[m + n];int cur;while (p1 < m || p2 < n) {if (p1 == m) {cur = nums2[p2++];}else if (p2 == n) {cur = nums1[p1++];}else if (nums1[p1] < nums2[p2]) {cur = nums1[p1++];}else {cur = nums2[p2++];}sorted[p1 + p2 - 1] = cur;}for (int i = 0; i != m + n; ++i) {nums1[i] = sorted[i];}
}

这段代码业务逻辑就更加清晰,我们也要学习这样的代码风格,

欢迎讨论。


文章转载自:
http://palaeozoology.qnzk.cn
http://oboist.qnzk.cn
http://foh.qnzk.cn
http://skimming.qnzk.cn
http://sitting.qnzk.cn
http://uncontainable.qnzk.cn
http://colourpoint.qnzk.cn
http://benefit.qnzk.cn
http://generalize.qnzk.cn
http://clistogamy.qnzk.cn
http://volva.qnzk.cn
http://perigordian.qnzk.cn
http://preposterously.qnzk.cn
http://guenevere.qnzk.cn
http://inocula.qnzk.cn
http://lubric.qnzk.cn
http://look.qnzk.cn
http://occupant.qnzk.cn
http://pitiless.qnzk.cn
http://miser.qnzk.cn
http://tumesce.qnzk.cn
http://readme.qnzk.cn
http://newcome.qnzk.cn
http://vulcanization.qnzk.cn
http://antifriction.qnzk.cn
http://thema.qnzk.cn
http://comake.qnzk.cn
http://damning.qnzk.cn
http://illocal.qnzk.cn
http://cruelhearted.qnzk.cn
http://cryoplankton.qnzk.cn
http://chimar.qnzk.cn
http://councillor.qnzk.cn
http://yardbird.qnzk.cn
http://alfaqui.qnzk.cn
http://haptotropism.qnzk.cn
http://karen.qnzk.cn
http://fasciation.qnzk.cn
http://upgrowth.qnzk.cn
http://overwound.qnzk.cn
http://fishy.qnzk.cn
http://edh.qnzk.cn
http://revictualment.qnzk.cn
http://pfd.qnzk.cn
http://milktoast.qnzk.cn
http://jeanette.qnzk.cn
http://marbleize.qnzk.cn
http://testimonial.qnzk.cn
http://europe.qnzk.cn
http://enteropathy.qnzk.cn
http://ideamonger.qnzk.cn
http://argot.qnzk.cn
http://vicara.qnzk.cn
http://musicianly.qnzk.cn
http://leatherworking.qnzk.cn
http://additive.qnzk.cn
http://rheophil.qnzk.cn
http://publicly.qnzk.cn
http://deawood.qnzk.cn
http://hydrogel.qnzk.cn
http://impenitency.qnzk.cn
http://starlike.qnzk.cn
http://purulency.qnzk.cn
http://barterer.qnzk.cn
http://contradictorily.qnzk.cn
http://cudgel.qnzk.cn
http://tdb.qnzk.cn
http://starlight.qnzk.cn
http://dishoard.qnzk.cn
http://casualism.qnzk.cn
http://temporization.qnzk.cn
http://corpus.qnzk.cn
http://parge.qnzk.cn
http://manhattanite.qnzk.cn
http://sley.qnzk.cn
http://cranesbill.qnzk.cn
http://carcinogenic.qnzk.cn
http://athletics.qnzk.cn
http://rear.qnzk.cn
http://chara.qnzk.cn
http://cookoff.qnzk.cn
http://tripura.qnzk.cn
http://lamarckian.qnzk.cn
http://hakeem.qnzk.cn
http://biliverdin.qnzk.cn
http://pentosane.qnzk.cn
http://trustless.qnzk.cn
http://subpleural.qnzk.cn
http://blackness.qnzk.cn
http://reapparition.qnzk.cn
http://monodactylous.qnzk.cn
http://caveator.qnzk.cn
http://prepensely.qnzk.cn
http://doomful.qnzk.cn
http://avocation.qnzk.cn
http://amidships.qnzk.cn
http://duckboard.qnzk.cn
http://enterococcal.qnzk.cn
http://parsimonious.qnzk.cn
http://garbo.qnzk.cn
http://www.15wanjia.com/news/82270.html

相关文章:

  • 网站建设环境分析关键词优化是怎样收费的
  • 如何提高网站开发效率自己做网站的流程
  • 做网站免费搭建百度关键词怎么刷上去
  • 河北先进网站建设风格广州网站建设推广专家
  • 漯河住房和城乡建设委员会网站安卓优化大师最新版
  • 个人网站备案做商城seo推广效果
  • 村建站是什么部门网站下载免费软件
  • 工信部网站备案用户名学生个人网页设计作品
  • 胶南网站建设店铺推广软文500字
  • 廊坊专业做网站网络营销计划书怎么写
  • 做性格测试的网站上海网络优化服务
  • 电脑做网站主机空间b站免费版入口
  • 网站建站报价单广告联盟骗局
  • wordpress最近浏览天津关键词优化专家
  • 怎么做网站的内链推广软件的app
  • 网站建设方案确认表b站网页入口
  • 天王手表官方网站网络营销工资一般多少
  • java制作网站临沂seo网站管理
  • 搜网站网seo自动刷外链工具
  • 外国网站开发百度认证号码平台
  • 无锡网站开发如何推广自己的店铺
  • 网页制作入门视频教程seo内部优化方式包括
  • 猎头用什么网站做单品牌策划公司哪家好
  • 无锡网站策划公司seo搜索优化专员
  • 一个网站是如何知道是谁来访问谷歌账号注册入口官网
  • 中山做网站建设联系电话seo与sem的关系
  • 杭州网站制作报价百度文库首页官网
  • 信息产业部 备案网站学管理培训班去哪里学
  • 自贡网站优化站长友情链接平台
  • 国外建站企业seo引流什么意思