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

【算法】算法题-20231112

算法题

  • 一、459. 重复的子字符串
  • 二、414. 第三大的数
  • 三、520. 检测大写字母
  • 四、680. 验证回文串 II
  • 五、283. 移动零

一、459. 重复的子字符串

简单

给定一个非空的字符串 s ,检查是否可以通过由它的一个子串重复多次构成。

示例 1:
输入: s = “abab”
输出: true
解释: 可由子串 “ab” 重复两次构成。
示例 2:
输入: s = “aba”
输出: false
示例 3:
输入: s = “abcabcabcabc”
输出: true
解释: 可由子串 “abc” 重复四次构成。 (或子串 “abcabc” 重复两次构成。)

def fun2(s):return s in (s + s)[1:-1]s = "aba"
print(fun2(s))

二、414. 第三大的数

简单

给你一个非空数组,返回此数组中 第三大的数 。如果不存在,则返回数组中最大的数。

示例 1:
输入:[3, 2, 1]
输出:1
解释:第三大的数是 1 。

示例 2:
输入:[1, 2]
输出:2
解释:第三大的数不存在, 所以返回最大的数 2 。

示例 3:
输入:[2, 2, 3, 1]
输出:1
解释:注意,要求返回第三大的数,是指在所有不同数字中排第三大的数。
此例中存在两个值为 2 的数,它们都排第二。在所有不同数字中排第三大的数为 1 。

def fun3(nums):nums.sort()if len(set(nums)) < 3:return nums[-1]else:return list(set(nums))[0]nums = [3, 2, 1]
print(fun3(nums))

三、520. 检测大写字母

简单

我们定义,在以下情况时,单词的大写用法是正确的:

全部字母都是大写,比如 “USA” 。
单词中所有字母都不是大写,比如 “leetcode” 。
如果单词不只含有一个字母,只有首字母大写, 比如 “Google” 。
给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。

示例 1:
输入:word = “USA”
输出:true

示例 2:
输入:word = “FlaG”
输出:false

def f1(word):if word.islower():return Trueelif word[0].isupper() and word[1:].islower():return Trueelif word.isupper():return Trueelse:return Falseword = "qlas"print(f1(word))

四、680. 验证回文串 II

简单
给你一个字符串 s,最多 可以从中删除一个字符。
请你判断 s 是否能成为回文字符串:如果能,返回 true ;否则,返回 false 。
示例 1:
输入:s = “aba”
输出:true
示例 2:
输入:s = “abca”
输出:true
解释:你可以删除字符 ‘c’ 。
示例 3:
输入:s = “abc”
输出:false

def f3(s):start=0end=len(s)-1while start<end:if s[start]==s[end]:start+=1end-=1else:return s[start:end]==s[start:end][::-1] or s[start+1:end+1]==s[start+1:end+1][::-1]return Trues = "abc"
print(f3(s))

五、283. 移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
请注意 ,必须在不复制数组的情况下原地对数组进行操作。

示例 1:
输入: nums = [0,1,0,3,12]
输出: [1,3,12,0,0]

示例 2:
输入: nums = [0]
输出: [0]

def test4(nums):j=0for i in range(len(nums)):if nums[i]:nums[i],nums[j]=nums[j],nums[i]j+=1return nums
nums = [0,1,0,3,12]
r=test4(nums)
print(r)

相关文章:

【算法】算法题-20231112

算法题 一、459. 重复的子字符串二、414. 第三大的数三、520. 检测大写字母四、680. 验证回文串 II五、283. 移动零 一、459. 重复的子字符串 简单 给定一个非空的字符串 s &#xff0c;检查是否可以通过由它的一个子串重复多次构成。 示例 1: 输入: s “abab” 输出: true…...

目标检测YOLO实战应用案例100讲-基于多目标追踪的交通场景异常检测(续)

目录 3.5特征融合网络改进:小目标检测层 3.5.1小目标检测层 3.6实验结果与讨论...

最新支付宝转卡码生成之转账源代码(隐藏部分卡号)

一、需要准备好自己的卡号、名称、以及对应的姓名 二、然后将自己的信息填入下面的代码中 三、然后将拼接好的代码&#xff0c;利用转码技术生产对应的二维码 四、这样一个跳转银行卡二维码的转账码就做好了 效果演示&#xff1a;如下 支付宝扫码、跳转码、转卡码、隐藏卡号…...

聊天机器人框架Rasa资源整理

Rasa是一个主流的构建对话机器人的开源框架&#xff0c;它的优点是几乎覆盖了对话系统的所有功能&#xff0c;并且每个模块都有很好的可扩展性。参考文献收集了一些Rasa相关的开源项目和优质文章。 一.Rasa介绍 1.Rasa本地安装 直接Rasa本地安装一个不好的地方就是容易把本地…...

魔搭社区LLM模型部署实践, 以ChatGLM3为例(一)

魔搭社区LLM模型部署实践&#xff0c; 以ChatGLM3为 例 本文以ChatGLM3-6B为例&#xff0c; 主要介绍在魔搭社区如何部署LLM&#xff0c; 主要包括如下内容&#xff1a; ● SwingDeploy - 云端部署&#xff0c; 实现零代码一键部署 ● 多端部署 - MAC个人笔记本&#xff0c;…...

25期代码随想录算法训练营第十四天 | 二叉树 | 层序遍历(10道题)、226.翻转二叉树 、101.对称二叉树 2

目录 层序遍历 10226.翻转二叉树101.对称二叉树 2 层序遍历 10 链接 # Definition for a binary tree node. # class TreeNode: # def __init__(self, val0, leftNone, rightNone): # self.val val # self.left left # self.right right clas…...

ubuntu cp210x(USB转串口)驱动安装教程

ubuntu cp210x&#xff08;USB转串口&#xff09;驱动安装 前言1. 驱动下载2. 驱动编译和安装3. 可能遇到的问题及解决办法3.1 第一种解决方案&#xff1a;检查当前是否已有CP210x.ko驱动3.2 第二种解决方案&#xff1a;修改驱动文件&#xff0c;编译 前言 CP2108 是一款高度集…...

Spring-SpringAOP的实现

对Spring AOP的理解 OOP表示面向对象编程&#xff0c;是一种编程思想&#xff0c;AOP表示面向切面编程&#xff0c;也是一种编程思想 Spring AOP&#xff1a;Spring为了让程序员更加方便的做到面向切面编程所提供的技术支持 Spring提供的一套机制&#xff0c;让我们更容易的…...

js:Browserslist用特定语句查询浏览器列表的工具与Babel和Postcss配置使用

目录 BrowserslistBabel 和 BrowserslistPostcss 和 Browserslist推荐配置参考文章 Browserslist Browserslist 是一个用特定语句查询浏览器列表的工具 文档 https://www.npmjs.com/package/browserslisthttps://github.com/browserslist/browserslist#full-list 安装 pnp…...

odoo16前端框架源码阅读——boot.js

odoo16前端框架源码阅读——boot.js 从名字就能看出来&#xff0c;这个文件是一个启动文件。 odoo前端将所有的js打包成了两个文件&#xff0c;一个是common.js,另一个是backend.js, 而common.js 是最先加载的 在common.js打包的js文件中最先加载的是下面的文件&#xff0c;看…...

使用MybatisPlus时出现的java.lang.NullPointerException异常~

错误描述如下所示&#xff1a; 错误原因&#xff1a;Junit的导包错误 单元测试的包有如下所示两个 我们应该根据springboot的版本进行选择&#xff0c; 在Spring Boot 2.2.X以后使用import org.junit.jupiter.api.Test Junit5 在Spring Boot 2.2.x之前使用import org.junit.T…...

27 微服务配置拉取

1&#xff09;引入nacos-config依赖 首先&#xff0c;在user-service服务中&#xff0c;引入nacos-config的客户端依赖&#xff1a; <!--nacos配置管理依赖--> <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-sta…...

hutool ExcelUtil导出excel二级表头

简介&#xff1a;Hutool是一款十分好用的开发工具集&#xff0c;里面包含了大部分日常开发常用的工具&#xff0c;使用简单方便&#xff0c;可以大大提升日常开发效率&#xff0c;十分推荐大家使用。这里简单总结一下基于Hutool的Excel使用。 一、Hutool依赖 <!-- Excel导出…...

《开箱元宇宙》:认识香港麦当劳通过 The Sandbox McNuggets Land 的 Web3 成功经验

McNuggets Land 是 The Sandbox 于 2023 年发布的最受欢迎的体验之一。在本期的《开箱元宇宙》系列中&#xff0c;我们采访了香港麦当劳数位顾客体验暨合作伙伴资深总监 Kai Tsang&#xff0c;来了解这一成功案例背后的策略。 在不断发展的市场营销和品牌推广领域&#xff0c;不…...

基于python+TensorFlow+Django卷积网络算法+深度学习模型+蔬菜识别系统

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 介绍了TensorFlow在图像识别分类中的应用&#xff0c;并通过相关代码进行了讲解。通过TensorFlow提供的工具和库&am…...

Python异常处理:三种不同方法的探索与最佳实践

Python异常处理&#xff1a;三种不同方法的探索与最佳实践 前言 本文旨在探讨Python中三种不同的异常处理方法。通过深入理解各种异常处理策略&#xff0c;我们可以更好地应对不同的编程场景&#xff0c;选择最适合自己需求的方法。 异常处理在编程中扮演着至关重要的角色。合…...

一文图解爬虫(spider)

—引导语 互联网&#xff08;Internet&#xff09;进化到今天&#xff0c;已然成为爬虫&#xff08;Spider&#xff09;编制的天下。从个体升级为组合、从组合联结为网络。因为有爬虫&#xff0c;我们可以更迅速地触达新鲜“网事”。 那么爬虫究竟如何工作的呢&#xff1f;允许…...

腾讯云3年期轻量应用服务器优惠(薅羊毛教程)

腾讯云轻量应用服务器特价是有新用户限制的&#xff0c;所以阿腾云建议大家选择3年期轻量应用服务器&#xff0c;一劳永逸&#xff0c;免去续费困扰。腾讯云轻量应用服务器3年优惠可以选择2核2G4M和2核4G5M带宽&#xff0c;3年轻量2核2G4M服务器540元&#xff0c;2核4G5M轻量应…...

多个div横向排列的几种方法

以下面这组 div 为例&#xff0c;group的高度由内容撑开 <div id"group"><div id"div1">div1</div><div id"div2">div2</div><div id"div3">div3</div> </div>显示结果如下为上下排…...

【编程语言发展史】Go语言的发展历史

目录 Go的起源 Go语言发展时间轴 logo Go的起源 Go 语言起源 2007 年&#xff0c;并于 2009 年正式对外发布。它从 2009 年 9 月 21 日开始作为谷歌公司 20% 兼职项目&#xff0c;即相关员工利用 20% 的空余时间来参与 Go 语言的研发工作。该项目的三位领导者均是著名的 …...

GD32H7 SPI3配置避坑指南:从GPIO到NSS,手把手解决‘主机配置错误’

GD32H7 SPI3配置避坑指南&#xff1a;从GPIO到NSS&#xff0c;手把手解决‘主机配置错误’ 在嵌入式开发中&#xff0c;SPI&#xff08;Serial Peripheral Interface&#xff09;作为一种高速、全双工的同步串行通信接口&#xff0c;因其简单高效的特点被广泛应用于各种外设连接…...

基于Tasmota固件的ESP8266与PZEM-004T智能电表系统搭建指南(二):数据可视化与安全优化

1. 数据可视化方案选型与搭建 在完成智能电表的基础数据采集后&#xff0c;如何让这些数据"活起来"是关键。我测试过多种方案后&#xff0c;最终选择了InfluxDBGrafana这对黄金组合。先说为什么不用Home Assistant自带的图表——它虽然简单易用&#xff0c;但当你需要…...

Qwen3-VL-8B多模态工具亲测:上传图片就能问,本地部署真简单

Qwen3-VL-8B多模态工具亲测&#xff1a;上传图片就能问&#xff0c;本地部署真简单 1. 工具概览&#xff1a;你的私人视觉助手 想象一下&#xff0c;当你看到一张复杂的图表或一张陌生的植物照片时&#xff0c;只需要上传图片并提问&#xff0c;就能立即获得专业级的解释和分…...

AI 首次实现电影级多镜头长视频生成!快手港中文开源ShotStream,可实现单NVIDIA GPU上可达16 FPS 互式故事讲述和高效即时帧生成。

在 AI 视频生成领域&#xff0c;我们长期被困在“单镜头”的牢笼里&#xff1a;生成的视频往往只有几秒到十几秒&#xff0c;且缺乏场景切换和叙事逻辑。想要生成一个有起承转合、有多角度运镜的完整故事片段&#xff0c;通常需要生成几十个独立视频再手动剪辑&#xff0c;不仅…...

Phi-4-mini-reasoning参数详解:repetition_penalty对数学表达重复的抑制效果

Phi-4-mini-reasoning参数详解&#xff1a;repetition_penalty对数学表达重复的抑制效果 1. 模型概述 Phi-4-mini-reasoning是一款专为推理任务优化的文本生成模型&#xff0c;特别擅长处理数学题、逻辑题等需要多步分析和精确结论输出的场景。与通用聊天模型不同&#xff0c…...

为什么选择RSA-Library:一个轻量级C语言加密解决方案

为什么选择RSA-Library&#xff1a;一个轻量级C语言加密解决方案 【免费下载链接】RSA-Library This is a C library for RSA encryption. It provides three functions for key generation, encryption, and decryption. 项目地址: https://gitcode.com/gh_mirrors/rs/RSA-L…...

VsionPro经典PatMax_Demo.idb图片分析

VsionPro自带数据集&#xff0c;位置&#xff1a;C:\Program Files\Cognex\VisionPro\Images&#xff08;默认位置&#xff09;PatMax_Demo.idb 是 VisionPro 最经典的高精度几何模板匹配教学案例&#xff0c;用一个复杂机械零件直观展示 PatMax 在旋转、缩放、遮挡、光照变化下…...

2026奇点智能技术大会核心成果(视觉导航Agent工业级部署白皮书首曝)

第一章&#xff1a;2026奇点智能技术大会&#xff1a;AIAgent视觉导航 2026奇点智能技术大会(https://ml-summit.org) 核心突破&#xff1a;端到端视觉-动作联合建模 本届大会首次公开部署的AIAgent视觉导航系统&#xff0c;摒弃传统SLAM路径规划分层架构&#xff0c;采用统一…...

云容笔谈·东方红颜影像生成系统环境配置详解:Anaconda虚拟环境管理

云容笔谈东方红颜影像生成系统环境配置详解&#xff1a;Anaconda虚拟环境管理 如果你刚接触AI图像生成&#xff0c;想在本地跑起来一个像“东方红颜”这样的模型&#xff0c;第一步往往不是写代码&#xff0c;而是配环境。我见过太多朋友&#xff0c;兴致勃勃地下载了模型代码…...

【深度解析】Python异步编程:为何‘async with’必须安居于async函数之内?

1. 从报错案例看异步编程的门槛 那天我正在用aiohttp写一个简单的网络爬虫&#xff0c;代码看起来非常简洁&#xff1a; import aiohttpasync with aiohttp.ClientSession() as session:async with session.get(http://example.com) as response:print(await response.text())运…...