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

报价网站制作新手怎么开始做电商

报价网站制作,新手怎么开始做电商,外贸公司论坛,手机网站用什么程序做594 最大和谐字符串 这道题属于字符串类型题目,解决的办法还是有很多的,暴力算法,二分法,双指针等等。 题目描述 和谐数组是指一个数组里元素的最大值和最小值之间的差别 正好是 1 。 现在,给你一个整数数组 nums …

594 最大和谐字符串

这道题属于字符串类型题目,解决的办法还是有很多的,暴力算法,二分法,双指针等等。

题目描述

和谐数组是指一个数组里元素的最大值和最小值之间的差别 正好是 1 。

现在,给你一个整数数组 nums ,请你在所有可能的子序列中找到最长的和谐子序列的长度。

数组的子序列是一个由数组派生出来的序列,它可以通过删除一些元素或不删除元素、且不改变其余元素的顺序而得到。

在这里插入图片描述

这题一上来描述贼多,例子给的是比较简单的。直接扔出两个例子让你理解,好了,是看着好像是简单的字符串一类。遥想当年还是在大学,坐在教室后排在上听着年老的大学教授讲着C++与字符串是多么的犯困😪,倚着头看着心仪班花的时候。。。啪!继续看题!
在这里插入图片描述
既然是面试,那咱们可不能让面试官久等了。

小明:OK,完事儿,等着面试官来表扬自己吧。他肯定会说:小子,你是个好手!工位都给你准备好了,工资你说了算。

暴力解法

    public static int longestHarmoniousSubsequence(int[] nums) {// 最长和谐子序列的长度int maxLength = 0;// 遍历所有可能的子序列for (int i = 0; i < nums.length; i++) {// 当前子序列的长度int currentLength = 1;// 从当前元素开始向后遍历for (int j = i + 1; j < nums.length; j++) {// 如果差为 1,则更新当前子序列的长度if (Math.abs(nums[i] - nums[j]) == 1) {currentLength += 1;} else {// 如果差不为 1,则结束当前子序列break;}}// 如果当前子序列的长度大于最长子序列的长度,则更新最长子序列的长度if (currentLength > maxLength) {maxLength = currentLength;}}return maxLength;}

在这里插入图片描述

面试官:嗯,你这个要是nums 数组 要是给了十万个数是不是会影响性能?

小明OS:今年这个找工市场,人言洛阳花似锦,偏我来时不逢春。。。怎的,技能要求突然涨了,不是做出来就行?

好吧,逼我拿出压箱底的东西是吧。的确这个算法是偏慢一些,但是这不是想着去请班花吃饭么。

这里我个人小白理解分析:

对于最长和谐子序列问题,我们可以使用滑动窗口来维护一个包含所有元素的和谐子序列。窗口的大小为 2,窗口中的元素之差为 1。

具体来说,我们可以从第一个元素开始,遍历整个数组。对于每个元素,我们将其添加到窗口中。如果窗口中的元素之差不为 1,则我们将窗口中的最小元素移出窗口。

这样,我们就可以确保窗口中始终包含一个和谐子序列。

Sliding Window

 public static int findLHS(int[] nums) {// 将数组升序排列Arrays.sort(nums);// 窗口的左边界int left = 0;// 窗口的右边界int right = 1;// 最长和谐子序列的长度int maxLength = 0; // 每次循环后的数组大小int len = 0;while(right < nums.length) {// 计算前后两个指针数字只差int diff =  nums[right] - nums[left];// 如果窗口中的元素之差大于1,并且左指针小于右指针,增加左指针while(diff > 1  && left < right) {left++;diff = nums[right] - nums[left];}// 就算当前符合要求的len长度if(nums[right] != nums[left]) {len = right - left + 1;}// 更新最长和谐子序列的长度maxLength = Math.max(len, maxLength);right++;}return maxLength;

好了,时间复杂度O(n)了,下一面继续

在这里插入图片描述

http://www.wangmingla.cn/news/138675.html

相关文章:

  • 网站建设与网页设计 视频国家免费培训网站
  • 网站中验证码如何做的bt kitty磁力猫
  • 网页设计工程师工资搜索引擎优化代理
  • 重庆有的设计网站肇庆seo优化
  • 贵阳两学一做网站广西关键词优化公司
  • 做网站加推广多少钱网站优化方案
  • 济南微网站开发百度一下打开网页
  • 郑州模板网站建设策划公司百度快照优化
  • 网站开发国内外研究浙江seo推广
  • 营销策划的八个步骤seo技术教学视频
  • 济南建站优化推广普通话文字素材
  • 百度成都分公司合肥seo外包平台
  • 做mad的素材网站免费建站网站
  • 怎么查询网站的备案号百度竞价排名利弊
  • 日照公司做网站品牌营销案例
  • 成都企业网站建设费用石家庄全网seo
  • 深圳网页设计师培训湖南企业seo优化报价
  • 网站推广优化哪家公司好今日财经新闻
  • 怎样做网站广告百度网盘搜索引擎网站
  • 建站软件移动版百度seo一本通
  • 淘宝禁止了网站建设类google seo实战教程
  • 美国做科普的网站中国十大教育培训机构有哪些
  • 北京展览网站建设怎样建立自己的网站平台
  • 重庆网站建设 优化竞彩足球最新比赛
  • 家装网站建设案例南阳seo优化
  • 顺德网站建设策划深圳百度推广客服
  • 动态网站设计作业如何做网站网页
  • 网站无备案无法登入公司百度推广一年多少钱
  • 文化传媒主播公司 东莞网站建设整站优化和单词
  • 北京有哪些网站制作公司优化网站价格