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

成都可以做网站的公司网站百度收录批量查询

成都可以做网站的公司,网站百度收录批量查询,如何做花店网站,网站建设出现乱码划分字母区间 题目 我的思路&#xff1a;第一次没有一点思路&#xff0c;第二次看了官网思路后&#xff0c;写的以下答案&#xff0c;没有搞明白循环遍历&#xff0c; //是不对的以下&#xff1a; class Solution {public List<Integer> partitionLabels(String s) {Li…

划分字母区间

题目
我的思路:第一次没有一点思路,第二次看了官网思路后,写的以下答案,没有搞明白循环遍历,
//是不对的以下:

class Solution {public List<Integer> partitionLabels(String s) {List<Integer> list=new ArrayList<>();int[] endPos=new int[26];for(int i=0;i<s.length();i++){endPos[s.charAt(i)-'a']=i;}int end=0,start=0;while(start!=s.length()-1){for(int i=start;i<=end;i++){end=Math.max(end,endPos[i]);//这样结束的不对!,不跳出来怎么能加到list结果里呢}list.add(end-start+1);start=end+1;}return list;}
}

官方答案:

class Solution {public List<Integer> partitionLabels(String s) {int[] last = new int[26];int length = s.length();for (int i = 0; i < length; i++) {last[s.charAt(i) - 'a'] = i;}List<Integer> partition = new ArrayList<Integer>();int start = 0, end = 0;for (int i = 0; i < length; i++) {end = Math.max(end, last[s.charAt(i) - 'a']);if (i == end) {partition.add(end - start + 1);start = end + 1;}}return partition;}
}作者:力扣官方题解
链接:https://leetcode.cn/problems/partition-labels/solutions/455703/hua-fen-zi-mu-qu-jian-by-leetcode-solution/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

55. 跳跃游戏

题目
我的思路:加入从0跳到第i个位置,那么0i之间的所有位置都可以到达,遍历0 i之间的所有位置,看它最远能到哪里,然后看最后能超过n-1,超过了说明能跳到n-1。但是又是很模糊的感觉,不知道具体怎么去“遍历”。
看了答案后写的:
注意思路是维护的是一个变量即最远能到达的位置,不是为每个位置都维护,这与上一题不同,上一题记录的是每个字母最远能到的位置。

class Solution {public boolean canJump(int[] nums) {int far=0;for(int i=0;i<=far;i++)//这里每次结束遍历的都是到最远的位置,官方答案是n,里面加了个if判断{far=Math.max(far,i+nums[i]);if(far>=nums.length-1)return true;}return false;}
}

45. 跳跃游戏II

题目
我的思路: 这道题目说的是跳到最后一个位置最少需要多少步,每个位置都能跳到最后一个位置,所以为了让步数最小,每次应该跳的最远,即i+nums[i]这么长,借鉴上一个的思路,维护的是最小的步数变量,遍历的还是整个数组。后来写出来不对,感觉可以用动态规划来做?
我写的有问题:超出时间限制(待解决)


//错误!!!!!
class Solution {public int jump(int[] nums) {int n=nums.length;int res=Integer.MAX_VALUE;for(int i=0;i<n;i++){int count=0;for(int j=i;j<n;){j=j+nums[j];      count++;         }res=Math.min(res,count+1); //最小是一步?}return res;}
}

官方答案思路:
方法1:倒着往前推。此处贪心的思路是:有多个可以跳到最后一个位置的情况时,也就是对应下标最小的那个。

class Solution {public int jump(int[] nums) {int position=nums.length-1;int step=0;while(position>0) //等于0就没必要跳了{for(int i=0;i<position;i++){if(i+nums[i]>=position){position=i;step++;break;}}}return step;}
}

方法2:正着往前推(待解决)

http://www.dtcms.com/wzjs/206611.html

相关文章:

  • php网站开发套模板步骤网站推广公司推荐
  • 中国纪检监察报怎么订阅如何网站关键词优化
  • thinkphp做网站后台百度网址安全中心怎么关闭
  • 长春网站排名优化公司免费的网页网站
  • 黔彩终端效果图seo综合查询工具
  • 首次建设网站流程目前网络推广平台
  • 网站域名选择今日重大新闻
  • 网站开发公司广告word一诺网络推广公司
  • 妇产科网站建设西安seo排名收费
  • 这么做网站找个免费的网站
  • 綦江网站建设广告投放方案
  • 中国黑色网站模板市场调研表模板
  • editplus建设网站教学产品网络推广的方法
  • 专业做美食视频的网站最新seo网站优化教程
  • 城固城乡建设规划网站百度关键词价格排行榜
  • 义乌网站建设公司排名链接购买
  • 科技公司网站响应式站长工具seo综合查询怎么使用的
  • 汕头定制网站建设seo分析及优化建议
  • 新闻网站建设工作总结火星时代教育培训机构怎么样
  • 什么网站可以找人做软件阿里云服务器
  • 网站色调红黑合肥头条今日头条新闻最新消息
  • 网站加载页面怎么做如何做网络推广推广
  • wordpress 放弃企业网站排名优化公司
  • 做宣传语的网站seo关键词排名优化的方法
  • 自己做网站申请域名谷歌独立站
  • wordpress 后台登陆不进去seo的工具有哪些
  • 济源做网站公司绍兴seo网站优化
  • 建筑工程资料网站seo如何建立优化网站
  • 苏州网站建设制作开发公司网络广告联盟
  • 十堰做网站官网seo