【算法刷题day56】 Leetcode:647. 回文子串、516. 最长回文子序列

文章目录

    • Leetcode 647. 回文子串
      • 解题思路
      • 代码
      • 总结
    • Leetcode 516. 最长回文子序列
      • 解题思路
      • 代码
      • 总结

草稿图网站
java的Deque

Leetcode 647. 回文子串

题目:647. 回文子串
解析:代码随想录解析

解题思路

斜上三角,从左下往上遍历,如果当前的两端的字符相等,长度为1或2,则为true,res++;如果超过2,则根据内部是否为true来决定是否设为true,res++

代码

class Solution {public int countSubstrings(String s) {int n = s.length();int res = 0;boolean [][]dp = new boolean[n][n];for (int i = n-1; i >= 0; i--) {for (int j = i; j < n; j++) {if (s.charAt(i) == s.charAt(j)) {if (i + 1 >= j) { // i,i 活 i,i+1dp[i][j] = true;res++;} else if (dp[i+1][j-1]) {dp[i][j] = true;res++;}}}}return res;}
}

总结

暂无

Leetcode 516. 最长回文子序列

题目:516. 最长回文子序列
解析:代码随想录解析

解题思路

dp数组的含义是i到j的子串中回文子串最长的是多少。

代码

class Solution {public int longestPalindromeSubseq(String s) {int n = s.length();int [][]dp = new int[n][n];//i到j的子串中回文子串最长的是多少for (int i = 0; i < n; i++)dp[i][i] = 1;for (int i = n - 1; i >= 0; i--) {for (int j = i + 1; j < n; j++) {if (s.charAt(i) == s.charAt(j)) {dp[i][j] = dp[i+1][j-1] + 2;} else {dp[i][j] = Math.max(dp[i+1][j], dp[i][j-1]);}}}return dp[0][n-1];}
}

总结

暂无

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/14523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【代码随想录】动态规划之完全背包问题与打家劫舍问题

前言 更详细的在大佬的代码随想录 (programmercarl.com) 本系列仅是简洁版笔记&#xff0c;为了之后方便观看 完全背包 for(int i 0; i < weight.size(); i) { // 遍历物品for(int j weight[i]; j < bagWeight; j) { // 遍历背包容量dp[j] max(dp[j], dp[j - weigh…

ElementPlus Steps步骤条插槽 v-slot:title

<el-steps finish-status"success"><el-stepv-for"item in uniqueReverseArr":status"item.status 2? success: item.status 3? error: item.status 1? finish: process"click.native"stepClick(item)"><templat…

PyTorch中Tensor简介

PyTorch中所有的操作都是基于Tensor&#xff08;张量&#xff09;的&#xff0c;因此理解张量的含义并能够自由创建张量是十分必要的。 张量是PyTorch中最基本的操作对象。我们可以用数学中的概念来辅助理解一下张量&#xff0c;如图5-1所示。 标量&#xff08;Scalar&#x…

c#数据库的增删改查

** 安装数据库包 ** 在使用 SQLite 数据库时&#xff0c;你需要安装适当的 NuGet 包来提供与 SQLite 的集成。 1.打开 Visual Studio 中的你的项目 2.在顶部菜单栏中选择 “项目” -> “管理 NuGet 包” 3.在 NuGet 管理器中搜索 “System.Data.SQLite” 4.找到适合你项目…

【openlayers系统学习】1.1渲染GeoJSON,添加link交互

一、渲染GeoJSON 在进入编辑之前&#xff0c;我们将看一下使用矢量源和图层进行基本要素渲染。Workshop在 data​ 目录中包含一个 countries.json​ GeoJSON文件。我们首先加载该数据并将其渲染在地图上。 首先&#xff0c;编辑 index.html​ 以便向地图添加深色背景&#xf…

Vue 组件的生命周期钩子有哪些用途是什么

Vue 组件的生命周期钩子提供了在不同阶段执行特定逻辑的机会&#xff0c;这些钩子在组件的创建、挂载、更新、销毁等过程中被调用。以下是每个生命周期钩子的常见用途&#xff1a; beforeCreate 用途&#xff1a;由于在这个阶段&#xff0c;组件的 data、computed、methods 和…

使用llama.cpp实现LLM大模型的格式转换、量化、推理、部署

使用llama.cpp实现LLM大模型的量化、推理、部署 大模型的格式转换、量化、推理、部署概述克隆和编译环境准备模型格式转换GGUF格式bin格式 模型量化模型加载与推理模型API服务模型API服务(第三方)GPU推理 大模型的格式转换、量化、推理、部署 概述 llama.cpp的主要目标是能够在…

【代码随想录算法训练营第37期 第十五天 | LeetCode226.翻转二叉树、101.对称二叉树 2】

代码随想录算法训练营第37期 第十五天 | LeetCode226.翻转二叉树、101.对称二叉树 2 一、226.翻转二叉树 解题代码C&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : …

【软考中级 软件设计师】数据结构

数据结构是计算机科学中一个基础且重要的概念&#xff0c;它研究数据的存储结构以及在此结构上执行的各种操作。在准备软考中级-软件设计师考试时&#xff0c;掌握好数据结构部分对于通过考试至关重要。下面是一些核心知识点概览&#xff1a; 基本概念&#xff1a; 数据结构定义…

VBA_MF系列技术资料1-615

MF系列VBA技术资料1-615 为了让广大学员在VBA编程中有切实可行的思路及有效的提高自己的编程技巧&#xff0c;我参考大量的资料&#xff0c;并结合自己的经验总结了这份MF系列VBA技术综合资料&#xff0c;而且开放源码&#xff08;MF04除外&#xff09;&#xff0c;其中MF01-0…

spring-boot集成slf4j(二)logback配置详解

一、configuration 根节点&#xff1a;configuration&#xff0c;作为顶级标签&#xff0c; 可以用来配置一些lockback的全局属性&#xff0c;常见的属性如下&#xff1a; &#xff08;1&#xff09;scan“true” &#xff1a;scan是否开启自动扫描&#xff0c;监控配置文件更…

el-table 组件实现 “合并单元格 + N行数据小计” 功能

目录 需求 - 要实现的效果初始代码代码升级&#xff08;可供多个表格使用&#xff09;CommonTable.vue 子组件 使用子组件1 - 父组件 - 图1~图3使用效果展示 使用子组件2 - 父组件 - 图4使用效果展示 注意【代码优化 - 解决bug】 需求 - 要实现的效果 父组件中 info 数据示例 …

内网安全之证书服务基础知识

PKI公钥基础设施 PKI(Public Key Infrastructure)公钥基础设施&#xff0c;是提供公钥加密和数字签名服务的系统或平台&#xff0c;是一个包括硬件、软件、人员、策略和规程的集合&#xff0c;用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能。企业…

Android Debug Bridge(ADB)命令使用

引言 Android Debug Bridge&#xff08;ADB&#xff09;是一套功能强大的命令行工具&#xff0c;它为Android开发者和高级用户提供了与Android设备通信的能力。无论是进行应用开发、测试还是执行日常设备管理任务&#xff0c;ADB都是不可或缺的工具。本文将详细介绍一些常用的…

element-plus:踩坑日记

el-table Q&#xff1a;有fixed属性时&#xff0c;无数据时&#xff0c;可能出现底部边框消失的bug 现象&#xff1a; 解决方法&#xff1a; .el-table__empty-block {border-bottom: 1px solid var(--el-table-border-color); } el-collapse 折叠面板 Q&#xff1a;标题上…

云平台的安全能力提升解决方案

提升云平台的安全能力是确保数据和服务安全的关键步骤。针对大型云平台所面临的云上安全建设问题&#xff0c;安全狗提供完整的一站式云安全解决方案&#xff0c;充分匹配云平台安全管理方的需求和云租户的安全需求。协助大型云平台建设全网安全态势感知、统一风险管理、统一资…

加强堆(大根堆)

way&#xff1a;看上去好像就是加了个indexMap记录节点在数组heap中的下标&#xff0c;然后就是可以查到某个元素是否在堆里并且可以进行位置的调整&#xff0c;普通的堆是没法知道元素是不是在的&#xff0c;只能弹堆顶元素&#xff0c;插入到堆尾这样子。如果觉得heapSize有点…

PCIE协议-4-物理层逻辑模块

4.1 简介 物理层将事务层和数据链路层与用于链路数据交换的信令技术隔离开来。物理层被划分为逻辑物理层和电气物理层子模块&#xff08;见图4-1&#xff09;。 4.2 逻辑物理层子模块 逻辑子模块有两个主要部分&#xff1a;一个发送部分&#xff0c;它准备从数据链路层传递过…

Spring 中常用的手动装载 bean 方法

在 Spring 的 bean 装载条件中&#xff0c;虽然 Spring 给我们提供了非常好用便捷的 Condition 相关注解&#xff0c;但是很多时候 Condition 相关注解并不满足我们的需求&#xff0c;我需要更复杂的条件手动控制是否装置 bean。这个时候我们就可以实现 Spring 为我们提供的几个…

域名DNS添加CAA记录

目录 概述 检测CAA记录 添加CAA记录 概述 DNS CAA(Certificate Authority Authorization)记录是一种不太常见的DNS记录类型,它主要用于锁定证书颁发机构(CA)列表,以确保只有特定的CA可以为某个域名颁发SSL/TLS证书。CAA记录是保护域名免受钓鱼攻击的安全措施,通过限制…