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

成都建设网站企业电话wordpress 路径标签

成都建设网站企业电话,wordpress 路径标签,什么是网络营销和网络营销的职能,在线微信小程序一、题目描述 给定一个字符串 s 表示一个整数嵌套列表#xff0c;实现一个解析它的语法分析器并返回解析的结果 NestedInteger 。 列表中的每个元素只可能是整数或整数嵌套列表 示例 1#xff1a; 输入#xff1a;s 324, 输出#xff1a;324 解释#xff…一、题目描述 给定一个字符串 s 表示一个整数嵌套列表实现一个解析它的语法分析器并返回解析的结果 NestedInteger 。 列表中的每个元素只可能是整数或整数嵌套列表 示例 1 输入s 324, 输出324 解释你应该返回一个 NestedInteger 对象其中只包含整数值 324。示例 2 输入s [123,[456,[789]]], 输出[123,[456,[789]]] 解释返回一个 NestedInteger 对象包含一个有两个元素的嵌套列表 1. 一个 integer 包含值 123 2. 一个包含两个元素的嵌套列表i. 一个 integer 包含值 456ii. 一个包含一个元素的嵌套列表a. 一个 integer 包含值 789提示 1 s.length 5 * 10^4s 由数字、方括号 []、负号 - 、逗号 ,组成用例保证 s 是可解析的 NestedInteger输入中的所有值的范围是 [-10^6, 10^6] 二、解题思路 解题思路 如果字符串 s 的第一个字符不是 [那么它是一个整数可以直接解析并返回。如果 s 的第一个字符是 [那么它是一个嵌套列表。我们需要遍历字符串解析出每个元素整数或嵌套列表并将其添加到结果 NestedInteger 对象中。 在解析嵌套列表时我们需要注意以下几点 使用一个栈来追踪嵌套的深度。每当遇到 [将一个新 NestedInteger 对象压入栈中每当遇到 ]将栈顶的 NestedInteger 对象弹出。当遇到 , 或 ] 时表示一个元素的结束。如果元素不是空的将其添加到栈顶的 NestedInteger 对象中。 三、具体代码 import java.util.*;public class Solution {public NestedInteger deserialize(String s) {if (s null || s.isEmpty()) {return new NestedInteger();}if (s.charAt(0) ! [) { // 如果不是以[开头则表示是一个整数return new NestedInteger(Integer.parseInt(s));}// 如果以[开头则表示是一个嵌套列表StackNestedInteger stack new Stack();NestedInteger curr null;int numStart 0; // 数字开始的索引for (int i 0; i s.length(); i) {char c s.charAt(i);if (c [) {// 遇到 [ 时将一个新的 NestedInteger 压入栈中if (curr ! null) {stack.push(curr);}curr new NestedInteger();numStart i 1; // 数字开始的索引更新} else if (c , || c ]) {// 遇到 , 或 ] 时表示一个元素的结束if (i numStart) { // 确保字符串不是空的String num s.substring(numStart, i);if (!num.isEmpty()) {curr.add(new NestedInteger(Integer.parseInt(num)));}}numStart i 1; // 数字开始的索引更新if (c ]) {// 遇到 ] 时将当前 NestedInteger 弹出并添加到上一个 NestedInteger 中if (!stack.isEmpty()) {NestedInteger pop stack.pop();pop.add(curr);curr pop;}}}}return curr;} }四、时间复杂度和空间复杂度 1. 时间复杂度 代码中的主要操作是遍历字符串 s这个操作的时间复杂度是 O(n)其中 n 是字符串 s 的长度。在遍历过程中对于每个字符我们执行了常数时间的操作例如字符比较、字符串子串的创建和整数的解析。这些操作不会改变整体的时间复杂度仍然是 O(n)。 因此整体的时间复杂度是 O(n)。 2. 空间复杂度 空间复杂度主要取决于以下两个因素 栈 stack在最坏的情况下如果嵌套列表非常深那么栈的大小将接近字符串的长度 n。因此栈的空间复杂度是 O(n)。 字符串子串在每次遇到逗号或右括号时我们可能创建了一个新的字符串子串。在最坏的情况下每次都会创建一个新的子串这些子串的总长度将接近字符串的长度 n。因此字符串子串的空间复杂度也是 O(n)。 综上所述整体的空间复杂度是 O(n)因为这两个空间需求是并列的不是累加的。 五、总结知识点 接口与实现 NestedInteger 接口的使用该接口定义了嵌套整数的抽象操作。 字符串处理 使用 charAt 方法来访问字符串中的单个字符。使用 substring 方法来提取字符串的子串。 异常处理 在将字符串转换为整数时如果字符串不是一个有效的整数表示parseInt 方法会抛出 NumberFormatException。 数据结构 使用 Stack 来处理嵌套结构这是解决此类问题的一种常见方法。 逻辑控制 使用循环 (for 循环) 来遍历字符串。使用条件语句 (if-else) 来根据不同的字符进行不同的处理。 递归结构 虽然代码本身不是递归的但处理嵌套列表的逻辑是递归的因为每次遇到 [ 时都会创建一个新的 NestedInteger 对象并在遇到 ] 时将其添加到上一层的 NestedInteger 对象中。 对象操作 创建 NestedInteger 对象并使用 add 方法来添加整数或嵌套列表。 边界条件处理 检查字符串是否为空或 null并返回一个空的 NestedInteger 对象。确保在添加整数前字符串子串不为空。 索引管理 使用变量 numStart 来跟踪当前数字子串的开始位置。 栈的操作 使用 push 方法将对象压入栈中。使用 pop 方法从栈中弹出对象。 以上就是解决这个问题的详细步骤希望能够为各位提供启发和帮助。
http://www.dnsts.com.cn/news/116525.html

相关文章:

  • 学生个人网页制作html动态营销型企业网站优化
  • 深圳网站工作室wordpress查询分类为空
  • 昆明网站建设公司_营销方案有哪些
  • 网站建设ps模板衡水网站建设优化推广
  • 那个做图网站叫什么美食网站建设方案
  • 如何自己做众筹网站公司网站如何做seo
  • 山东川畅科技联系 网站设计wordpress技术博客模板
  • 判断网站到期企业服务网站制作
  • 做网站优化常用工具网站内页
  • 网站服务器开发自助网站建设方案
  • 山西商城网站建设网站开发前端和后端技术
  • 商城网站开发方案书重庆电子工程职业学院招生网
  • 网站制作中企动力国内做网上旅游业务的网站
  • 成都网站开发技术百度网址大全导航首页
  • 做外单网站旅游网站建设设计
  • 关于网站开发的外文翻译用jsp做的网站在不同浏览器显示效果差异很大如何解决
  • 企业网站的网络营销功能临沂网站建设小程序
  • 电子商务网站建设 教材做网站地图
  • 哪里学网站建设与管理网站服务器搭建及配置的具体步骤
  • 前端什么证书含金量高长沙市seo百度关键词
  • 在深圳做网站平台需要什么备案网站建设怎么做账
  • 如何在网盘上做网站WordPress有哪些工具
  • 邵阳邵东网站建设建设门户网站需要注意什么
  • 网站架构设计师求职信网站使用的数据库主要有哪些
  • 下载网站站开发如何实现网站开发手机验证码
  • 杭州网站设计哪家公司好广州新塘网站制作推广
  • 建网站盈利如何做后台网站增删改
  • 金融建设网站如何制作代码
  • 比较冷门的视频网站做搬运网站怎么做seo关键词
  • easyui 做的网站水产养殖畜禽饲料类网站前端模板