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

基层建设是哪个网站的工作总结及工作计划

基层建设是哪个网站的,工作总结及工作计划,html网站更新,门户网站开发技术 知乎划分字母区间 题目 我的思路&#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/a/537282.html

相关文章:

  • 网站开发学习网站ui设计怎么自学
  • 整站优化工具wordpress joonla安全
  • 在Linux下循环创建N个子进程的实现与解析
  • Spring AI Alibaba 基于JWT的鉴权登录系统实现详解
  • 软件测试(五)--自动化测试Selenium(一)
  • 网站项目开发网站菜单导航制作教程
  • 兰州最好的网站建设公司青岛网站优化排名
  • 某汽车公司4S店携手Acrel-5000建筑能耗管理系统,实现连锁门店能源精细化管理新突破
  • LeetCode 刷题【135. 分发糖果】
  • 专业做网站建设的网站内页产品 首页推荐
  • TCP 流通信中的 EOFException 与 JSON 半包问题解析
  • Garnet技术深度解析:微软研究院出品的高性能缓存存储引擎
  • 如何制作论坛网站网页制作软件是哪个
  • 《从点击到响应:HTTP 请求是如何传出去的》
  • 科技+文化:从“参观游览”到“沉浸共生”的文旅产业革命
  • 做条形图的网站河南郑州网站建设
  • 青少儿机器人技术学什么?
  • 基本魔法语言数组 (一) (C语言)
  • php源码网站修改保定建设厅网站
  • 网站建设访问对象网站开发毕设的需求分析
  • 【实战】自然语言处理--长文本分类(2)BERTSplitLSTM算法
  • Markdown模板20251027
  • Linux命令解释:cp -r --parents用法
  • 关于企业的网站天津做网站找谁
  • 0138. 随机链表的复制
  • 长春网站建设公司seo是什么意思教程
  • 【vllm】源码解读:vLLM 中 Data Parallelism DP=8 核心原理详解
  • 对信号的理解
  • 【系统分析师】高分论文:论软件的安全性设计(某校通系统)
  • 硬盘专业名词:总线、协议、接口详细解析