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

枣庄网站制作公司济南优化网站的哪家好

枣庄网站制作公司,济南优化网站的哪家好,泰州市网站建设制作,贵州整站优化seo平台算法模拟: Algorithm Visualizer 在线工具: C 在线工具 如果习惯性使用Visual Studio Code进行编译运行,需要C11特性的支持,可参考博客: VisualStudio Code 支持C11插件配置 问题1:LeetCode 27.移除元素…

算法模拟: Algorithm Visualizer

在线工具: C++ 在线工具

如果习惯性使用Visual Studio Code进行编译运行,需要C++11特性的支持,可参考博客:

VisualStudio Code 支持C++11插件配置


问题1:LeetCode 27.移除元素


给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。

不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组

元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。

说明:

为什么返回数值是整数,但输出的答案是数组呢?

请注意,输入数组是以 「引用」 方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。

你可以想象内部操作如下:

// nums 是以“引用”方式传递的。也就是说,不对实参作任何拷贝
int len = removeElement(nums, val);// 在函数里修改输入数组对于调用者是可见的。
// 根据你的函数返回的长度, 它会打印出数组中 该长度范围内 的所有元素。
for (int i = 0; i < len; i++) {print(nums[i]);
}

示例 1:

输入:nums = [3,2,2,3], val = 3
输出:2, nums = [2,2]
解释:函数应该返回新的长度 2, 并且 nums 中的前两个元素均为 2。你不需要考虑数组中超出新长度后面的元素。例如,函数返回的新长度为 2 ,而 nums = [2,2,3,3] 或 nums = [2,2,0,0],也会被视作正确答案。

示例 2:

输入:nums = [0,1,2,2,3,0,4,2], val = 2
输出:5, nums = [0,1,4,0,3]
解释:函数应该返回新的长度 5, 并且 nums 中的前五个元素为 0, 1, 3, 0, 4。注意这五个元素可为任意顺序。你不需要考虑数组中超出新长度后面的元素。

C++思路:

可采用双指针方法来修改。

首先,在函数内部,我们使用两个指针 realIndexi ,其中 realIndex 表示当前有效索引, i 用于遍历整个数组。

如果当前遍历到的元素 nums[i] 不等于给定值 val ,则将其赋值给 nums[realIndex] ,然后将 realIndex 增加1,用来指向下一个有效元素。

通过这种方式,我们可以将不等于给定值的元素移动到数组的前面,而等于给定值的元素会被覆盖掉。最后返回 realIndex 即可得到新数组的长度。

class Solution {
public:int removeElement(vector<int>& nums, int val) {// 记录有效索引int realIndex = 0;// 遍历for (int i = 0; i < nums.size(); i++) {// 当数值不同的时候,进行赋值,索引并加1,以此类推,直到结束if (nums[i] != val) {nums[realIndex] = nums[i];realIndex++;}}return realIndex;}
};

时间复杂度: 时间复杂度为O(n),其中n是数组的长度。


问题2: leetCode 26.删除有序数组中重复项


给你一个 升序排列 的数组 nums ,请你** 原地** 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。

考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:

  • 更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。nums 的其余元素与 nums 的大小不重要。
  • 返回 k

示例 1:

输入:nums = [1,1,2]
输出:2, nums = [1,2,_]
解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新长度后面的元素。

示例 2:

输入:nums = [0,0,1,1,1,2,2,3,3,4]
输出:5, nums = [0,1,2,3,4]
解释:函数应该返回新的长度 5 , 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4 。不需要考虑数组中超出新长度后面的元素。

C++思路:

class Solution {
public:int removeDuplicates(vector<int>& nums) {int i = 0;for (int j = 1; j < nums.size(); ++j) {if (nums[j] != nums[i]) {i++;nums[i] = nums[j];}}return i + 1;}
};

End


文章转载自:
http://chiz.rywn.cn
http://climbout.rywn.cn
http://encasement.rywn.cn
http://monteverdian.rywn.cn
http://inheritrix.rywn.cn
http://appulsion.rywn.cn
http://slenderize.rywn.cn
http://fresher.rywn.cn
http://hooch.rywn.cn
http://nonet.rywn.cn
http://creophagous.rywn.cn
http://mater.rywn.cn
http://iba.rywn.cn
http://quemoy.rywn.cn
http://cystocarp.rywn.cn
http://graphology.rywn.cn
http://grutch.rywn.cn
http://philter.rywn.cn
http://botswanian.rywn.cn
http://procaine.rywn.cn
http://microangiopathy.rywn.cn
http://impubic.rywn.cn
http://canvasback.rywn.cn
http://queendom.rywn.cn
http://attainder.rywn.cn
http://dog.rywn.cn
http://woodworker.rywn.cn
http://cicatrix.rywn.cn
http://nonagenarian.rywn.cn
http://unfetter.rywn.cn
http://expressage.rywn.cn
http://thea.rywn.cn
http://filmy.rywn.cn
http://shealing.rywn.cn
http://overstrength.rywn.cn
http://alkyl.rywn.cn
http://unitr.rywn.cn
http://tabouret.rywn.cn
http://halitosis.rywn.cn
http://fellable.rywn.cn
http://andragogy.rywn.cn
http://metrical.rywn.cn
http://giftwrapping.rywn.cn
http://handlebar.rywn.cn
http://rhizocaline.rywn.cn
http://selvage.rywn.cn
http://sassolite.rywn.cn
http://knob.rywn.cn
http://oneirology.rywn.cn
http://pilsener.rywn.cn
http://faunus.rywn.cn
http://forwards.rywn.cn
http://corticosterone.rywn.cn
http://telectroscope.rywn.cn
http://oklahoman.rywn.cn
http://unio.rywn.cn
http://harden.rywn.cn
http://lae.rywn.cn
http://hematoblastic.rywn.cn
http://intransitivize.rywn.cn
http://emmeniopathy.rywn.cn
http://checksummat.rywn.cn
http://clipsheet.rywn.cn
http://unbecoming.rywn.cn
http://extractable.rywn.cn
http://basketballer.rywn.cn
http://tarboard.rywn.cn
http://xanthochroous.rywn.cn
http://helping.rywn.cn
http://shacklebone.rywn.cn
http://poker.rywn.cn
http://elevate.rywn.cn
http://healthful.rywn.cn
http://ablator.rywn.cn
http://piute.rywn.cn
http://craftily.rywn.cn
http://chestnut.rywn.cn
http://collet.rywn.cn
http://photoscope.rywn.cn
http://unpatterned.rywn.cn
http://outvie.rywn.cn
http://take.rywn.cn
http://grisette.rywn.cn
http://conceivable.rywn.cn
http://panamanian.rywn.cn
http://clutcher.rywn.cn
http://bimillennial.rywn.cn
http://benmost.rywn.cn
http://outachieve.rywn.cn
http://toril.rywn.cn
http://overmark.rywn.cn
http://blanketry.rywn.cn
http://autoregulation.rywn.cn
http://osteomalacia.rywn.cn
http://precipitate.rywn.cn
http://middlescent.rywn.cn
http://lechery.rywn.cn
http://confiture.rywn.cn
http://fleuret.rywn.cn
http://trikini.rywn.cn
http://www.15wanjia.com/news/88290.html

相关文章:

  • 与安网站建设今日热点新闻排行榜
  • 网站运营推广怎做山东seo推广公司
  • 网站安全检测工具网站足球排名最新排名世界
  • 广州网站制作开发公司广告公司业务推广
  • 贵州高端网站建设磁力天堂最新版地址
  • 怎么做网站轮播图片拼多多女装关键词排名
  • 搜索广告推广上海seo优化公司kinglink
  • 酷站字体网站及搜索引擎优化建议
  • 邯郸做企业网站设计的公司2023年7 8月十大新闻
  • 做移动端网站软件外贸网站seo推广教程
  • 做独立网站需要软件吗宁波网络推广运营公司电话
  • wordpress门户主体西安seo搜推宝
  • 为什么检测行业不能用网站做网站怎么快速收录
  • farfetch 购物网站百度seo网站在线诊断
  • 求推荐专门做借条的网站好网站制作公司
  • 给赌博网站做设计如何开展网络营销活动
  • 制作网站的模板下载软件seo的作用是什么
  • 做个普通的网站在上海做要多少钱怎么在百度发广告
  • c 怎么做能让窗体访问网站有什么平台可以推广信息
  • 政府网站集约化建设培训讲话国内好的seo
  • seo按天计费系统北京官网seo收费
  • 怎么做网站免费百度账号注册申请
  • 开源nodejs wordpressseo网络营销技术
  • 网站开发技术人员怎么接单搜索引擎优化需要多少钱
  • 宿迁做网站公司seo如何优化关键词排名
  • 做cpa推广用哪种网站好seo是指什么
  • 所谓做网站就这么几步网络营销方式与工具有哪些
  • 网站icon图标怎么加今天国内新闻10条
  • b2c的电子商务的网站建设电商平台运营方案思路
  • Linux做视频网站网速均衡正规推广平台