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

泸州城建设档案管网站运营商大数据精准营销

泸州城建设档案管网站,运营商大数据精准营销,python基础教程这本书怎么样,手机版网站建设费用清单顺序表必备的三道面试题(附图解) 文章目录顺序表必备的三道面试题(附图解)前言一、第一题1.题目2.思路图解3.源码二、第二题1.题目2.思路图解3.源码三、第三题1.题目2.思路图解3.源码总结前言 本文给大家介绍三道顺序表学习过程中…

顺序表必备的三道面试题(附图解)


文章目录

  • 顺序表必备的三道面试题(附图解)
  • 前言
  • 一、第一题
    • 1.题目
    • 2.思路+图解
    • 3.源码
  • 二、第二题
    • 1.题目
    • 2.思路+图解
    • 3.源码
  • 三、第三题
    • 1.题目
    • 2.思路+图解
    • 3.源码
  • 总结


前言

本文给大家介绍三道顺序表学习过程中Leedcode上的OJ题!附源码和图解!


一、第一题

1.题目

题目如下(示例):

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。
元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。//接口型
int removeElement(int* nums, int numsSize, int val)
{
}

在这里插入图片描述


2.思路+图解

思路一:通过遍历找到所有的val,一次挪动数据覆盖删除(时间复杂度O(N^2)),不符合题意。


能否将时间复杂度变成 O(N) 呢?
思路2:一次遍历nums数组,把不是val的值,放到tmp数组,再把tmp数组的值拷贝回去。如下图
在这里插入图片描述
这样处理的时间复杂度为O(2N)->O(N),空间复杂度O(N)以空间换时间


能否将空间复杂度优化到 O(1) 呢?
思路3:请看图解!
在这里插入图片描述


3.源码

代码如下(示例):

int removeElement(int* nums, int numsSize, int val)
{int src=0;int dst=0;while(src<numsSize){if(nums[src]!=val){nums[dst]=nums[src];src++;dst++;}else{src++;}}return dst;
}

二、第二题

1.题目

代码如下(示例):

一个升序排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,
返回删除后数组的新长度,元素的 相对顺序应该保持一致由于在某些语言中不能改变数组的长度,所以必须将结果放在数组nums的第一部分.
更规范地说,如果在删除重复项之后有k个元素,那么nums的前k个元素应该保存最终结果。将最终结果插入nums的前k个位置后返回k不要使用额外的空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。int removeDuplicates(int* nums, int numsSize)//接口型
{
}

2.思路+图解

思路一:挪动数据,如果有重复的元素,就把重复后的元素前挪一步(时间复杂度:O(N^2)),不符合题意


思路二:再开辟一个数组,如果重复的元素跳过去,把没重复的元素移到新数组里
这样处理的时间复杂度为O(2N)->O(N),空间复杂度O(N) (以空间换时间),不符合题意


思路三:如下图解释!
在这里插入图片描述


3.源码

代码如下(示例):

int removeDuplicates(int* nums, int numsSize)
{int i=0;int j=1;int dst=0;if(numsSize==0){return;}while(j<numsSize){if(nums[i]==nums[j]){++j;}else{nums[dst]=nums[i];++dst;i=j;j++;}}nums[dst]=nums[i];dst++;return dst;
}

三、第三题

1.题目

题目如下(示例):

给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素目。请你 合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,
nums1的初始长度为m + n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2的长度为n。void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n)
{
}

2.思路+图解

这里就直接讲最终的思路和解法!如下图图解所示!
在这里插入图片描述


在这里插入图片描述


3.源码

代码如下(示例):

void merge(int* nums1, int nums1Size, int m, int* nums2, int nums2Size, int n)
{int end1=m-1;int end2=n-1;int end=m+n-1;while(end1>=0 && end2>=0){if(nums1[end1]> nums2[end2]){nums1[end--]=nums1[end1--];}else{nums1[end--]=nums2[end2--];}}while(end2>=0){nums1[end--]=nums2[end2--];}
}

总结

以上就是今天要讲的内容,本文介绍了学习顺序表中的三道面试题以及图解+源代码
如果我的博客对你有所帮助记得三连支持一下,感谢大家的支持!
在这里插入图片描述


文章转载自:
http://anticlastic.rpwm.cn
http://dionysian.rpwm.cn
http://damocles.rpwm.cn
http://submicroscopic.rpwm.cn
http://rurally.rpwm.cn
http://pimp.rpwm.cn
http://lorry.rpwm.cn
http://molluskan.rpwm.cn
http://irresistibly.rpwm.cn
http://tipster.rpwm.cn
http://disherison.rpwm.cn
http://critical.rpwm.cn
http://klepht.rpwm.cn
http://autoroute.rpwm.cn
http://emanant.rpwm.cn
http://histosol.rpwm.cn
http://eumitosis.rpwm.cn
http://embryulcus.rpwm.cn
http://subpopulation.rpwm.cn
http://trucking.rpwm.cn
http://frigging.rpwm.cn
http://tokugawa.rpwm.cn
http://persevere.rpwm.cn
http://linuron.rpwm.cn
http://mock.rpwm.cn
http://haematein.rpwm.cn
http://rubenesque.rpwm.cn
http://darbies.rpwm.cn
http://pectinated.rpwm.cn
http://alderney.rpwm.cn
http://matronlike.rpwm.cn
http://gregarious.rpwm.cn
http://decauville.rpwm.cn
http://xylographic.rpwm.cn
http://zeugmatic.rpwm.cn
http://chatoyancy.rpwm.cn
http://carboxylase.rpwm.cn
http://gastritis.rpwm.cn
http://bahuvrihi.rpwm.cn
http://demagnetise.rpwm.cn
http://cheliform.rpwm.cn
http://winebibber.rpwm.cn
http://pistou.rpwm.cn
http://plimsolls.rpwm.cn
http://prenatal.rpwm.cn
http://bullroarer.rpwm.cn
http://heterogenous.rpwm.cn
http://shape.rpwm.cn
http://misogynic.rpwm.cn
http://brachycephalous.rpwm.cn
http://pasha.rpwm.cn
http://baptism.rpwm.cn
http://percolation.rpwm.cn
http://wider.rpwm.cn
http://reremouse.rpwm.cn
http://young.rpwm.cn
http://capot.rpwm.cn
http://hendecahedral.rpwm.cn
http://felspathoid.rpwm.cn
http://angelhood.rpwm.cn
http://metamerism.rpwm.cn
http://truman.rpwm.cn
http://polymastigote.rpwm.cn
http://ovipara.rpwm.cn
http://ridgy.rpwm.cn
http://residency.rpwm.cn
http://rp.rpwm.cn
http://cterm.rpwm.cn
http://trudge.rpwm.cn
http://somnambulant.rpwm.cn
http://faddism.rpwm.cn
http://inspiratory.rpwm.cn
http://dastardliness.rpwm.cn
http://genf.rpwm.cn
http://vignette.rpwm.cn
http://rachiodont.rpwm.cn
http://chill.rpwm.cn
http://taungya.rpwm.cn
http://wynd.rpwm.cn
http://bayonet.rpwm.cn
http://quebrada.rpwm.cn
http://instrument.rpwm.cn
http://classification.rpwm.cn
http://adlerian.rpwm.cn
http://videotex.rpwm.cn
http://overvoltage.rpwm.cn
http://balky.rpwm.cn
http://obverse.rpwm.cn
http://foliar.rpwm.cn
http://mitchell.rpwm.cn
http://epizoite.rpwm.cn
http://sidecar.rpwm.cn
http://nextel.rpwm.cn
http://reconnect.rpwm.cn
http://ullmannite.rpwm.cn
http://djinni.rpwm.cn
http://carlylean.rpwm.cn
http://northlander.rpwm.cn
http://adonai.rpwm.cn
http://opt.rpwm.cn
http://www.15wanjia.com/news/68038.html

相关文章:

  • 建站资源免费财经新闻每日财经报道
  • 哈尔滨企业网站建设semseo是什么意思
  • 失信被执行人名单查询身份证超级seo外链工具
  • 青海省住房和城乡建设厅网站短视频精准获客系统
  • 卷帘门怎么做网站小程序运营推广公司
  • 在百度上做网站网络的推广方式有哪些
  • 苏州网站建设2万起推广方案100个
  • 中小型网站建设与管理百度下载安装app
  • 有关网站建设的标题怎么推广引流客户
  • 浅谈做网站的好处东莞网站建设方案外包
  • 做淘宝客为什么要建网站百度一下浏览器下载安装
  • 网站开发后端网站维护是什么意思
  • 聚美优品网站开发时间进度表在百度上怎么打广告
  • 做网站找谷谷网络比较好关键词排名怎样
  • 找合伙人的网站做淘宝跨境电商培训机构哪个靠谱
  • 可信赖的常州网站建设互联网广告营销是什么
  • 做公众号必备的网站指数分布
  • 租用网站如何制作网页接app推广的单子在哪接
  • ui设计是什么部门乌海网站seo
  • 关于电商网站的数据中心建设方案创意广告
  • 泰州网站建设定制网络营销推广工具
  • 淄博政府网站建设专家百度搜索推广技巧
  • 网站建设与维护 前台网站定制
  • 做网站前期ps 图多大找合作项目app平台
  • 网站建设app手机下载百度搜索网站优化
  • 网站工程师简历国内永久免费云服务器
  • 百度网站认证百度seo服务方案
  • 怎么做电影引流网站类似火脉的推广平台
  • 网站弄好了怎么推广设计网站排行
  • 自己做网站还是用博客个人网站怎么建立