【蓝桥杯备战】Day 1

news2024/12/13 13:01:26

1.基础题目

LCR 018.验证回文串

给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。

本题中,将空字符串定义为有效的 回文串 

示例 1:

输入: s = "A man, a plan, a canal: Panama"
输出: true
解释:"amanaplanacanalpanama" 是回文串

示例 2:

输入: s = "race a car"
输出: false
解释:"raceacar" 不是回文串

提示:

  • 1 <= s.length <= 2 * 105
  • 字符串 s 由 ASCII 字符组成

分析:

        本题目主要考察回文串判断,所谓回文串:就是从右向左和从左向右遍历的字符完全相等

        对此,我采用双指针法,两个指针分别为 i 和 j ,从左右同时出发,i=0,j=s.length()-1;

        在这里还要进行的是有效字符判断,题目要求字母与数字为有效字符且不区分大小写,对于条件的判断为:

  • 字母与数字为有效字符 Character.isLetterOrDigit()
  • 全部字母转小写Character.toLowerCase()

        除此之外题目还要求空串也为回文串,在程序开始要加上判断条件

注意

  • 判断字符串是否相等采用A.equals(B)
  • 判断字符或者数字表达式是否相等采用==

        当字符串中遇到非有效数字,采用while循环直到找到有效字符,当左右都为有效字符才能进行比较

        这里要注意在内循环寻找有效字符也要进行 i < j 的判断,防止进来时候符合,在寻找有效字符时超过范围

代码:

class Solution {
    public boolean isPalindrome(String s) {
        if (s.equals("")) {
            return true;
        }
        int i = 0;
        int j = s.length() - 1;
        while (i < j) {
            while (i < j && !Character.isLetterOrDigit(s.charAt(i))) {
                i++;
            }
            while (i < j && !Character.isLetterOrDigit(s.charAt(j))) {
                j--;
            }
            if (Character.toLowerCase(s.charAt(i)) != Character.toLowerCase(s.charAt(j))) {
                return false;
            }
            i++;
            j--;
        }
        return true;
    }
}

 🌟基础题目地址:LCR 018. 验证回文串 - 力扣(LeetCode)

2.进阶题目: 

118.杨辉三角

给定一个非负整数 numRows生成「杨辉三角」的前 numRows 行。

在「杨辉三角」中,每个数是它左上方和右上方的数的和。

示例 1:

输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]

示例 2:

输入: numRows = 1
输出: [[1]]

提示:

  • 1 <= numRows <= 30

分析:

首先观察返回值要返回一个二维数组List<List<Integer>>,那么首先要生成二维数组用于存储,二维数组可以看成每个元素存储一个数组的一维数组

因此,我采用一行一行进行填充,首行为一个1元素,从第二行开始,每一行相当于第一个元素为1,最后一个元素为1,中间元素为上一行上方元素与左上方元素之和,采用add方法先将元素填充至curRow再把整个数组填充至triangle。

存储上一行元素这里用到了一个新数组prevrow[],这个数组的值采用二维数组上一个元素,这个地方有些难以理解,但实质使用起来却很简单。 

List类中获得元素采用get方法,添加采用add方法

代码:

class Solution {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> triangle=new ArrayList();
        List<Integer> Firstrow=new ArrayList();
        Firstrow.add(1);
        triangle.add(Firstrow);
        int i=1;
        while(i<numRows){
            List<Integer> curRow=new ArrayList();
            curRow.add(1);
            List<Integer> prevRow=triangle.get(i-1);
            for(int j=1;j<i;j++){
                curRow.add(prevRow.get(j-1)+prevRow.get(j));
            }
            curRow.add(1);
            triangle.add(curRow);
            i++;
        }
        return triangle;
    }
}

118. 杨辉三角 - 力扣(LeetCode)🌟进阶题目地址:118. 杨辉三角 - 力扣(LeetCode)

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

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

相关文章

牛客网刷题 | BC126 小乐乐查找数字

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;从0至1-CSDN博客&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;C语言、C、数据结构、嵌入式、Linux&#x1f36d; &#x1f60e;本文内容&#x1f923;&#xff1a;&#x1f36d;BC1…

单元测试-FATAL ERROR in native method: processing of -javaagent failed

文章目录 前言单元测试-FATAL ERROR in native method: processing of -javaagent failed1. 报错信息2. 解决方案 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运…

使用PaliGemma2构建多模态目标检测系统:从架构设计到性能优化的技术实践指南

目标检测技术作为计算机视觉领域的核心组件&#xff0c;在自动驾驶系统、智能监控、零售分析以及增强现实等应用中发挥着关键作用。本文将详细介绍PaliGemma2模型的微调流程&#xff0c;该模型通过整合SigLIP-So400m视觉编码器与Gemma 2系列的高级语言模型&#xff0c;专门针对…

uni-app 设置缓存过期时间【跨端开发系列】

&#x1f517; uniapp 跨端开发系列文章&#xff1a;&#x1f380;&#x1f380;&#x1f380; uni-app 组成和跨端原理 【跨端开发系列】 uni-app 各端差异注意事项 【跨端开发系列】uni-app 离线本地存储方案 【跨端开发系列】uni-app UI库、框架、组件选型指南 【跨端开…

东方明珠生成式人工智能媒体融合创新平台荣获AI Cloud轻量云典型案例

近日&#xff0c;由全球数字经济大会组委会主办&#xff0c;中国信息通信研究院&#xff08;以下简称“信通院”&#xff09;、中国通信企业协会承办的2024全球数字经济大会云AI计算国际合作论坛在北京成功召开。会上隆重发布了2024年“AI Cloud助力大模型场景化和工程化落地”…

数据结构 ——树状存储的实现

数据结构 ——树状存储的实现 1、树的遍历 按层遍历&#xff1a;从树的根节点开始&#xff0c;逐层遍历树中的所有节点。这种遍历方式也称为广度优先遍历。 先序遍历&#xff08;前序遍历&#xff09;&#xff1a;先访问根节点&#xff0c;然后递归地先序遍历左子树&#xff…

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 原模型 单图推理

基于Qwen2-VL模型针对LaTeX OCR任务进行微调训练 - 原模型 单图推理 flyish 输入 输出 [‘这是一幅中国传统山水画&#xff0c;描绘了一座高耸的山峰&#xff0c;周围环绕着树木和植被。画面下方有一片开阔的田野&#xff0c;远处的山峦在薄雾中若隐若现。画面上方有几行书法…

Docker 安装 Jenkins:2.346.3

准备&#xff1a;已安装Docker&#xff0c;已配置服务器安全组规则 1581 1、拉取镜像 [rootTseng ~]# docker pull jenkins/jenkins:2.346.3 2.346.3: Pulling from jenkins/jenkins 001c52e26ad5: Pull complete 6b8dd635df38: Pull complete 2ba4c74fd680: Pull complet…

AWS re:Invent 发布新的数据库产品 Aurora DSQL; NineData SQL编程大赛开始; 腾讯云支持PostgreSQL 17

重要更新 1. AWS re:Invent 发布新的数据库产品 Aurora DSQL &#xff0c;提供了跨区域、强一致、多区域读写的能力&#xff0c;同时具备99.999%&#xff08;多区域部署&#xff09;的可用性&#xff0c;兼容PostgreSQL&#xff1b;同时发布的还有 DynamoDB 也提供类似的跨区域…

《孤岛惊魂4》无法启动提示缺少“msvcp100.dll”快速修复方法!

《孤岛惊魂4》缺少msvcp100.dll的解决之道 在探索《孤岛惊魂4》这款充满惊险与刺激的射击游戏时&#xff0c;玩家可能会遇到一些意外的障碍&#xff0c;其中之一便是“缺少msvcp100.dll”的错误提示。这个错误不仅让游戏无法正常启动&#xff0c;还可能让玩家对游戏的热情大打…

机器学习:监督学习、无监督学习

1. 引言 机器学习是一种人工智能领域的技术&#xff0c;它旨在让计算机通过学习数据和模式&#xff0c;而不是明确地进行编程来完成任务。 机器学习分为监督学习、无监督学习、半监督学习、强化学习 四种。 ​ 2. 监督学习 2.1 什么是监督学习 定义&#xff1a;根据已有的数…

反向代理-缓存篇

文章目录 强缓存一、Expires(http1.0 规范)二、cache-control(http1.1 出现的 header 信息)Cache-Control 的常用选项Cache-Control 常用选项的选择三、弊端协商缓存一、ETag二、If-None-Match三、Last-modified四、If-Modified-Since浏览器的三种刷新方式静态资源部署策略…

【leetcode100】反转链表

1、题目描述 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&#xff1a;[5,4,3,2,1] 2、初始思路 2.1 思路 # Definition for singly-linked list. # class ListNode: # …

1.网络知识-IP与子网掩码的关系及计算实例

IP与子网掩码 说实话&#xff0c;之前没有注意过&#xff0c;今天我打开自己的办公地电脑&#xff0c;看到我的网络配置如下&#xff1a; 我看到我的子网掩码是255.255.254.0&#xff0c;我就奇怪了&#xff0c;我经常见到的子网掩码都是255.255.255.0啊&#xff1f;难道公司配…

代发考试战报:12月8号通过HCIP-datacom数通两门考试

代发考试战报&#xff1a;12月8号通过HCIP-datacom数通两门考试&#xff0c;题库非常稳定&#xff0c;精修版题库&#xff0c;题库数量少&#xff0c;没有重复题&#xff0c;题库答案也很准确&#xff0c;排版也很清楚&#xff0c;看会就能考过&#xff0c;。#华为#HCIP#题库#考…

Autosar培训笔记整理<二>

目录 往期推荐 Autosar培训笔记整理&#xff1c;一&#xff1e; AUTOSAR 产品 AUTOSAR Classic Platform (CP): AUTOSAR Foundation: AUTOSAR Acceptance Tests (TC) AUTOSAR Methodology and Templates AUTOSAR Tools CP VS AP Autosar软件架构 Top view AUTOSAR基础…

Maven插件打包发布远程Docker镜像

dockerfile-maven-plugin插件的介绍 dockerfile-maven-plugin目前这款插件非常成熟&#xff0c;它集成了Maven和Docker&#xff0c;该插件的官方文档地址如下&#xff1a; 地址&#xff1a;https://github.com/spotify/dockerfile-maven 其他说明&#xff1a; dockerfile是用…

Maven(生命周期、POM、模块化、聚合、依赖管理)详解

Maven构建项目的生命周期 在Maven出现之前&#xff0c;项目构建的生命周期就已经存在&#xff0c;软件开发人员每天都在对项目进行清理&#xff0c;编译&#xff0c;测试&#xff0c;部署等工作&#xff0c;这个过程就是项目构建的生命周期。虽然大家都在不停的做构建工作&…

MATLAB四种逻辑运算

MATLAB中的四种逻辑运算包括逻辑与用&或 a n d 表示 ( 全为 1 时才为 1 &#xff0c;否则为 0 ) and表示(全为1时才为1&#xff0c;否则为0) and表示(全为1时才为1&#xff0c;否则为0)&#xff0c;逻辑或用|或 o r 表示 ( 有 1 就为 1 &#xff0c;都为 0 才为 0 ) or表示…

【知识点】图与图论入门

何为图论 见名知意&#xff0c;图论 (Graph Theory) 就是研究 图 (Graph) 的数学理论和方法。图是一种抽象的数据结构&#xff0c;由 节点 (Node) 和 连接这些节点的 边 (Edge) 组成。图论在计算机科学、网络分析、物流、社会网络分析等领域有广泛的应用。 如下&#xff0c;这…