【简单】821. 字符的最短距离

【异常】OpenClaw 连接异常This site can‘t be reached 127.0.0.1 refused to connect Try: Checking the proxy 在访问OpenClaw相关服务时,浏览器提示如下异常信息,无法正常加载页面:Try:补充说明:该报错仅出现于本地访问场景(127.0.0.1为本地回环地址),涉及OpenClaw核心服务的本地连接交互,无外部网络及敏感信息泄露风险。 阅读详情

【题目】
给定一个字符串 S 和一个字符 C。返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。
来源:leetcode
链接:https://leetcode-cn.com/problems/shortest-distance-to-a-character/
【示例】
输入: S = “loveleetcode”, C = ‘e’
输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0]
【说明】
字符串 S 的长度范围为 [1, 10000]
C 是一个单字符,且保证是字符串 S 里的字符
S 和 C 中的所有字母均为小写字母
【代码】
执行用时 :4 ms, 在所有 C++ 提交中击败了76.47% 的用户
内存消耗 :6.8 MB, 在所有 C++ 提交中击败了100.00%的用户

class Solution {
public:
    vector<int> shortestToChar(string S, char C) {
        vector<int> rs(S.size());
        int sl=S.size(),preC=S.find(C),postC=S.find(C,preC+1);
        if(preC==S.find_last_of(C))
            postC=20000;
        for(int i=0;i<sl;i++){
            if(i<=preC){
                rs[i]=preC-i;
            }
            else{
                rs[i]=min(i-preC,postC-i);
            }
            if(i+1==postC){
                preC=postC;
                if(preC==S.find_last_of(C))
                    postC=20000;
                else
                    postC=S.find(C,preC+1);
            }
        }
        return rs;
    }
};
EtherCAT ROS2 入门教程(一) 本文介绍了EtherCAT驱动与ROS2的集成方案,主要包括三部分内容:1)在Ubuntu 22.04上安装IgH EtherCAT主站的详细步骤,包括内核配置、源码编译和网络适配器设置;2)构建ethercat_driver_ros2,通过ros2_control描述文件配置硬件接口和EtherCAT从站模块插件;3)使用方法,包括启动EtherCAT主站和运行配置包。该方案支持通过参数文件定义硬件接口,并提供通用和专用两种EtherCAT模块插件,便于开发基于EtherCAT的工业应用。 阅读详情

相关推荐

AI重塑运营商CRM:从传统办理到智能推荐的实战经验

本文探讨了AI技术如何重塑运营商CRM系统,从传统办理模式升级为智能推荐平台。文章首先分析了传统CRM系统在产品推荐效率、客户信息录入、业务流程和个性化服务等方面的痛点,提出AI赋能的解决方案。技术架构采用分层设计,包含智能推荐引擎、知识图谱系统和大模型集成三大核心模块。实战案例详细介绍了基于深度学习的智能推荐系统实现,包括用户行为特征提取、产品特征建模、推荐模型训练和实时推荐服务等关键组件代码实现,展示了AI如何提升运营商CRM系统的智能化水平和服务效率。

技术传感器的博客 1050

LeetCode——821.字符的最短距离

通过万岁!!! 题目:就是在一个字符串s中,我们要找到每一个字符距离目标字符的最短距离。 思路一:我是选择按照这个目标字符将字符串进行拆分。这样我们得到一个字符串数组,然后遍历这个字符数组strs即可。每个字符数组中的字符串str中字符对应的目标结果就是当前位置到左边或者到右边的最小值。换句话说,就是str中每个字符到str左边和右边的最小值。但是存在两个特殊情况,就是s的头尾不是目标字符的时候,这两种情况我们单独讨论即可。但是这种思路空间消耗好像有点多,所以我觉得可以用双指针,我们找到下一个e即可。 思

玄昌盛不会编程 750

Windows 10下用VS2022编译AFSIM 2.9.0的完整避坑指南

本文提供了在Windows 10系统下,使用Visual Studio 2022编译AFSIM 2.9.0仿真框架的详细指南。文章系统梳理了从环境准备、CMake配置、编译链接到安装打包的全流程,并重点针对编译过程中常见的文件编码、命名空间冲突等高频错误提供了具体解决方案,旨在帮助开发者高效避坑,顺利完成AFSIM在Windows平台上的构建。

weixin_28839549的博客 552

力扣每日一题821.字符的最短距离

力扣每日一题821.字符的最短距离 题目:给你一个字符串 s 和一个字符 c ,且 c 是 s 中出现过的字符。返回一个整数数组 answer ,其中 answer.length == s.length 且 answer[i] 是 s 中从下标 i 到离它 最近 的字符 c 的 距离 。两个下标 i 和 j 之间的 距离 为 abs(i - j) ,其中 abs 是绝对值函数。 输入:s = “loveleetcode”, c = “e” 输出:[3,2,1,0,1,0,0,1,2,2,1

qq_32885681的博客 292

Python_构建同花顺问财智能选股API服务

本文详细介绍了如何使用Python构建同花顺问财智能选股API服务,涵盖从环境准备、核心API开发到高级功能扩展的全过程。通过Flask框架和pywencai库,开发者可以快速搭建稳定可靠的选股接口,实现自动化股票筛选与交易系统集成,提升量化投资效率。

weixin_30596343的博客 333

电力电子技术文章:ACOT控制模式在Buck变换器中的频率稳定性分析

本文深入分析了ACOT控制模式在Buck变换器中实现频率稳定性的原理与优势。通过对比传统COT模式,阐述了ACOT如何通过自适应调整导通时间,将开关频率锁定在设定值,从而有效应对输入电压与负载变化。文章还探讨了其在轻载DCM模式下的高效与平滑切换特性,并提供了关键的设计考量与实战指南。

cc789的博客 1156

821. 字符的最短距离

力扣传送门 思路一:双指针 假如指定字符为a 第一种abcda,字符被指定字符包围,最小距离为到左右两边a的最小值,例如b的最小距离为min(a-b,b-a) => (4-1,1-0) 第二种bcda,左边无指定字符,最小距离为a-b,例如b的最小距离为a-b => (3-0) 第三种abcd,右边无指定字符,最小距离为b-a,例如b的最小距离为b-a => (1-0) class Solution { public int[] shortestToChar(String s

qq_45833812的博客 374

LightTools中VBA宏的编写入门

LightTools和VBA联动

bestgamer的博客 2348

【leetcode】821. 字符的最短距离

给定一个字符串S和一个字符C。返回一个代表字符串S中每个字符到字符串S中的字符C的最短距离的数组。 示例 1: 输入: S = "loveleetcode", C = 'e' 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串S的长度范围为[1, 10000]。 C是一个单字符,且保证是字符串S里的字符。 ...

littlemichelle 421

apm软件仿真+QGC地面站 环境搭建

本教程使用场景:apm软件仿真运行于虚拟机 ubuntu环境。qgc地面站位于windows 系统。两个环境在同一台电脑上。 一.apm仿真环境搭建 1.安装vm虚拟机及ubuntu 18。 2.ubuntu下 下载Ardupilot 飞控源码 并配置环境。 下载源码: git clone https://github.com/ArduPilot/ardupilot cd ardupilot git submodule update --init --recursive 配置所需运行的环境:

qthello 6111

【实战】基于 Inner-IoU 的 YOLOv8 优化指南:显著提升检测精度

Inner-IoU 凭借辅助边框的创新设计,成功解决了传统 IoU 损失在小目标、遮挡场景下的收敛难题,为 YOLOv8 注入了更强的定位能力。从原理剖析到代码集成,本教程已为你铺就了一条“精度提升”的实战路径。现在,不妨亲自上手尝试,让你的目标检测模型在各类数据集上都能交出一份“精度优异”的答卷——相信我,当你看到检测框精准贴合目标的那一刻,你会明白这份尝试的价值。

m0_64661770的博客 108

LeetCode 821:字符的最短距离

题目 思路 首先找出字符C所在位置,然后遍历字符串S,计算和字符C位置的最短距离。 代码 class Solution { public: vector&amp;lt;int&amp;gt; shortestToChar(string S, char C) { int n = S.size(); vector&amp;lt;int&amp;gt; temp; ...

慢慢积累 716

23、视频时间码与数字同步技术详解

本文深入解析了视频时间码与数字同步技术的核心原理及应用。涵盖线性时间码(LTC)和垂直间隔时间码(VITC)的结构与特性,详细阐述了降帧时间码的补偿机制及其在影视制作中的重要性。文章还介绍了定时参考信号(TRS)在SDTV和HDTV中的实现方式,分析了辅助数据的传输结构与发展趋势,并探讨了SDI编码技术及其在不同视频标准下的差异。通过实际应用场景和技术发展影响的剖析,全面展示了这些关键技术如何支撑现代视频系统的高效运行与持续创新。

wine的专栏 241

821. 字符的最短距离 难度 简单

给定一个字符串S和一个字符C。返回一个代表字符串S中每个字符到字符串S中的字符C的最短距离的数组。 示例 1: 输入: S = "loveleetcode", C = 'e' 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串S的长度范围为[1, 10000]。 C是一个单字符,且保证是字符串S里的字符。 ...

aspace123的博客 179

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

LeetCode:821. 字符的最短距离(简单)

题目描述 给定一个字符串 S 和一个字符 C。返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。 示例 1: 输入: S = “loveleetcode”, C = ‘e’ 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串 S 的长度范围为 [1, 10000]。C 是一个单字符,且保证是字符串 S 里的字符。S 和 C 中的所有字母均为小写字母。 题解 题解1 记录字符串S中字符C出现的位置,判断字符串中每一个元素与字符

qq_42147969的博客 214

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

leetcode 算法题821 (简单214) 字符的最短距离

leetcode 算法题821 (简单214) 字符的最短距离 题目介绍 给定一个字符串 S 和一个字符 C。 返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。 示例 输入: S = “loveleetcode”, C = ‘e’ 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 字符串 S 的长度范围为 [1, 1...

FYuu95100的博客 260

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

LeetCode 821. 字符的最短距离(简单)

LeetCode

qq_61540355的博客 146

力扣刷题--821. 字符的最短距离【简单】

力扣刷题--821. 字符的最短距离【简单】

学无止境 584

D49 LeetCode 821.字符的最短距离(简单)

一、题目 二、思路(自己) 先确定字符串中字符c出现的位置,将其存入一个数组,然后再将字符串中各个各个位置与其相减取最小值即可。 class Solution { public int[] shortestToChar(String s, char c) { char[] ans=s.toCharArray(); List<Integer> l=new ArrayList<>(); for (int i =..

weixin_66813230的博客 267

Java实现 LeetCode 821 字符的最短距离(暴力)

821. 字符的最短距离 给定一个字符串 S 和一个字符 C。返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。 示例 1: 输入: S = “loveleetcode”, C = ‘e’ 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串 S 的长度范围为 [1, 10000]。 C 是一个单字符,且保证是字符串 S 里的字符。 S 和 C 中的所有字母均为小写字母。 class Solution { public in

南 墙 9323

Leetcode 821. 字符的最短距离 C++

Leetcode 821. 字符的最短距离 题目 给定一个字符串 S 和一个字符 C。返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。 示例: 输入: S = "loveleetcode", C = 'e' 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串 S 的长度范围为 [1, 10000]。 C 是一个单字符,且保证是字符串 S 里的字符。 S 和 C中的所有字母均为小写字母。 题解 在S中先找到所有C的位置,然后依

weixin_43750513的博客 233

LeetCode 821. 字符的最短距离

目录结构 1.题目 2.题解 1.题目 给定一个字符串S和一个字符C。返回一个代表字符串S中每个字符到字符串S中的字符C的最短距离的数组。 示例: 输入: S = "loveleetcode", C = 'e' 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串S的长度范围为[1, 10000]。 C是一个单字符,且保证是字符串S里的字符。 S和C中的所有字母均为小写字母。 来源:力扣(LeetCode...

HarvestWu的博客 269

Leetcode每日一题821. 字符的最短距离

Leetcode每日一题821. 字符的最短距离

小羊的博客 879

letcode - 821 -字符的最短距离 - java版

文章目录题目代码 题目 给定一个字符串 S 和一个字符 C。返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。 示例 1: 输入: S = “loveleetcode”, C = ‘e’ 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串 S 的长度范围为 [1, 10000]。 C 是一个单字符,且保证是字符串 S 里的...

lingle1的博客 428

LeetCode系列:821.字符的最短距离

821.字符的最短距离 给定一个字符串 S 和一个字符 C。返回一个代表字符串 S 中每个字符到字符串 S 中的字符 C 的最短距离的数组。 示例 1: 输入: S = “loveleetcode”, C = ‘e’ 输出: [3, 2, 1, 0, 1, 0, 0, 1, 2, 2, 1, 0] 说明: 字符串 S 的长度范围为 [1, 10000]。 C 是一个单字符,且保证是字符串 S 里的...

QQ1131221088的博客 351
上一篇: 【简单】面试题 01.02. 判定是否互为字符重排
下一篇: 【简单】762. 二进制表示中质数个计算置位
菜菜2022
博客等级 码龄9年 67粉丝 1033原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值