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

力扣刷题Day 66:分割回文串(131)

1.题目描述

2.思路

用了回溯的方法。首先写一个验证字符串是否是回文串的函数,然后遍历s,依次判断从当前字符到下一字符是否是回文串,是的话继续往后走,不是的话往回退。

3.代码(Python3)

class Solution:def partition(self, s: str) -> List[List[str]]:def palindrome(sub_s):left, right = 0, len(sub_s) - 1while left < right:if sub_s[left] != sub_s[right]:return Falseleft += 1right -= 1return Truedef backtrack(start, tmp):if start == len(s):res.append(list(tmp))returnfor i in range(start, len(s)):if palindrome(s[start : i + 1]):tmp.append(s[start : i + 1])backtrack(i + 1, tmp)tmp.pop()res = []backtrack(0, [])return res

4.执行情况

5.感想

这次回溯写得很快。

http://www.xdnf.cn/news/10335.html

相关文章:

  • 【Redis】数据类型补充
  • t018-高校宣讲会管理系统 【含源码!】
  • 浅谈简历制作的四点注意事项
  • NLP学习路线图(十四):词袋模型(Bag of Words)
  • Go语言中的数据类型转换
  • 数据结构之ArrayList
  • 【 SpringCloud | 微服务 网关 】
  • CppCon 2014 学习:Unicode in C++
  • win10手动调整日期和时间
  • ​​技术深度解析:《鸿蒙5.0+:无感续航的智能魔法》​
  • Java基本数据类型、抽象类和接口、枚举、时间类、String类全面介绍
  • 【PhysUnits】15.7 引入P1后的加法运算(add.rs)
  • 【赵渝强老师】OceanBase部署工具
  • buuctf-web
  • 计算机基础——宏病毒防御与网络技术
  • MacroDroid安卓版:自动化操作,让生活更智能
  • Ubuntu取消开机用户自动登录
  • RuoYi前后端分离框架实现前后端数据传输加密(二)之前端篇
  • 区块链可投会议CCF B--EDBT 2026 截止10.8 附录用率
  • unix/linux source 命令,其基本概念、定义、性质、定理
  • 科技修真的解决方案
  • MyBatis 的 <foreach> 标签中collection 属性
  • JVM学习(七)--JVM性能监控
  • WSL 安装 Debian 12 后,Linux 如何安装 curl , quickjs ?
  • 为什么badmin reconfig以后始终不能提交任务
  • PyTorch——DataLoader的使用
  • 第6节 Node.js 回调函数
  • iOS —— UI 初探
  • slider滑块async await
  • 使用BERT/BiLSTM + CRF 模型进行NER进展记录~