算法-尽可能使字符串相等-滑动窗口

Python3 计算字符串变换相等的最小操作代价 2020远景智能计算字符串相似度 计算字符串变换相等的最小操作代价 2020远景智能计算字符串相似度计算字符串变换相等的最小操作代价题目描述:输入描述:输出描述:示例:思路:算法介绍示例代码:代码输出:2020远景智能在线笔试 计算字符串的相似度题目描述:输入描述:输出描述:示例:思路:示例代码代码输出 计算字符串变换相等的最小操作代价 题目描述: 定义一套操作方法来把两个字符串变得相同,如下: 1、增加一个字符,如把’a’替换为’b’。 操作一步的代价为add_cost。 2、删除一个字符,如把’abdd’变为’aebdd’。 操作一步的代价为del_cost。 3、修改一个字符 立即下载

1、题目描述

给你两个长度相同的字符串,s 和 t。
将 s 中的第 i 个字符变到 t 中的第 i 个字符需要 |s[i] - t[i]| 的开销(开销可能为 0),也就是两个字符的 ASCII 码值的差的绝对值。

用于变更字符串的最大预算是 maxCost。在转化字符串时,总开销应当小于等于该预算,这也意味着字符串的转化可能是不完全的。

如果你可以将 s 的子字符串转化为它在 t 中对应的子字符串,则返回可以转化的最大长度。
如果 s 中没有子字符串可以转化成 t 中对应的子字符串,则返回 0。
---------------------------------------------------------------------
示例 1:
输入:s = "abcd", t = "bcdf", cost = 3
输出:3
解释:s 中的 "abc" 可以变为 "bcd"。开销为 3,所以最大长度为 3。

示例 2:
输入:s = "abcd", t = "cdef", cost = 3
输出:1
解释:s 中的任一字符要想变成 t 中对应的字符,其开销都是 2。因此,最大长度为 1。

示例 3:
输入:s = "abcd", t = "acde", cost = 0
输出:1
解释:你无法作出任何改动,所以最大长度为 1。

2、题目分析

  • 首先理解什么是开销,开销就是字符串s的第i个字符->编程字符串t的第i个字符的花费,用绝对值 |s[i]-t[i]|
  • 题目除了给定两个目标字符串,还给定了一个最大开销maxCost,要求总开销不能超过这个数
  • 题目要求返回能转换的最大子字符串长度,也就是找到能转换的最大连续子字符串:滑动窗口
  • 用一个cost来统计当前窗口内的字符串转化的开销,一个max来记录可行的最大子字符串的长度
  • left标识窗口左侧,right标识窗口右侧,当窗口内开销小于限制时,right右移;当大于开销时,left左移。
  • 注意更新当前开销和最大子字符串长度

3、代码实现

class Solution {
    public int equalSubstring(String s, String t, int maxCost) {
        int cost = 0;//当前的开销
        int max = 0;//最大的可行窗口
        int left = 0,right = 0;
        while(right < s.length()){
            cost += Math.abs(s.charAt(right) - t.charAt(right));
            while(cost > maxCost){
                cost -= Math.abs(s.charAt(left) - t.charAt(left));
                ++left;
            }
            max = Math.max(max,right - left + 1);
            ++right;
        }
        return max;
    }
}

4、复杂度分析

  • 时间复杂度:O(N)
  • 空间复杂度:O(1)
手把手教你搞定MT6701磁编码器的SSI通信与CRC-6校验(附避坑代码) 本文详细介绍了MT6701磁编码器的SSI通信与CRC-6校验的实现方法,包括硬件连接、时序配置、数据读取和专用CRC-6算法。通过提供避坑代码和常见问题解决方案,帮助开发者快速掌握磁编芯片的调试技巧,确保通信稳定可靠。 阅读详情

相关推荐

ADS软件操作(10)——DAC控件使用

该控件可以用于为元件定义随频率变换的参数,如放大器的最佳负载阻抗或者源阻抗,需要双频匹配时的优化等,下图是ADS中该控件的模型。

Zhuanzhuyan的博客 4388

滑动窗口的方法解决一些String的查找问题

今天来介绍一种“滑动窗口”算法,可以用来解决一些子串查找问题

Alvin_优快云_blog的博客 775

数字IC后端设计实现之Innovus POD V2 Flow性能优化全解析

本文深入解析了数字IC后端设计中的Innovus POD V2 Flow性能优化方案。该流程通过整合place_opt_design与clock_opt_design命令,实现了布局与时钟树的协同优化,有效提升了时序收敛效率、改善了设计密度与拥塞,并显著减少了迭代次数,是应对先进工艺复杂设计的关键利器。

ik6789012的博客 1243

算法之滑动窗口寻找最长无重复字符串

今天无聊的时候刷了一道leetcode的题目,给定字符串,查找最长无重复字符串,具体题目信息如下: 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3: 输入: s = "pwwkew" 输出: 3 解释: 因为无重复字符的

PRML_MAN的博客 1664

Starlink卫星动力学系统仿真建模前传1-时空系统介绍

对于在轨道上运动的航天器由于速度接近第一宇宙速度,为了获取准确的位置信息对时间的精度要求极高,为了准确描述航天器的运动规律,本节对卫星仿真建模中用到的各种时间系统进行介绍。卫星轨道平面为坐标平面,坐标原点位于卫星系统质心,轴由卫星系统质心指向地心(当地垂线),轴在轨道面内垂直于轴并指向卫星的前进方向,轴同、轴构成右手系,指向轨道面负法线方向。不同坐标系下的建立的运动形式与复杂程度不同,会直接影响运动方程的求解繁简程度,因此,选取适当的坐标系具有重要的意义。定义星体坐标系,该坐标系简记为系,与卫星本体固连。

xspace的博客 1432

【机械臂算法】基于最小惯性参数集的动力学辨识仿真实践

本文深入探讨了机械臂动力学参数辨识的核心挑战与解决方案,重点阐述了基于最小惯性参数集的理论与方法。通过分析PUMA560实例,详细介绍了利用QR分解法或符号推导法获取可辨识参数集,并系统讲解了从激励轨迹设计、仿真数据采集、线性系统求解到模型验证的完整实践流程,为高精度动力学建模与控制奠定了坚实基础。

weixin_29054399的博客 376

左旋转字符串(剑指offer)---C语言

剑指 Offer 58 - II. 左旋转字符串 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。 示例 1: 输入: s = “abcdefg”, k = 2 输出: “cdefgab” 示例 2: 输入: s = “lrloseumgh”, k = 6 输出: “umghlrlose” char* reverseLeftWords(char* s, i

gdarg的博客 534

AutoCAD 2024 LISP实用技巧:自定义快捷命令与高效绘图工具集

本文详细介绍了如何在AutoCAD 2024中部署和使用LISP脚本,打造高效绘图工具集。通过自定义快捷命令,如WFF(超级文字查找替换)、GQT(图层隔离)和LLTJ(智能长度统计),可大幅简化图层管理、文字编辑和测量统计等重复性操作,显著提升绘图效率。

gan8painter的博客 317

左神算法学习篇2:字符串(滑动窗口)相关

Day 2:字符串(滑动窗口)相关题目解题思路一代码实现解题思路二代码实现总结 上周末去滑雪了,人生第一次滑雪,第一把居然一次也没摔跤! 中午吃饭拍的喵星人~ 题目 给定长度m的字符串aim,以及一个长度为n的字符串str,问能否在str中找到一个长度为m的连续子串,使得这个子串刚好由aim的m个字符组成,顺序可以随机,返回任意满足条件的其中一个子串的起始位置,未找到返回-1。 解题思路一 本题就是想在主串中找到一个子串,这个子串需要满足与目标串长度相同,且组成字符种类及每个字符出现次数均相同的! 首先比

香农三定律的博客 500

5.3 磁悬浮轴承:基于有限元法的电磁场分析

摘要:本文系统阐述了有限元法在磁悬浮轴承电磁场分析中的应用。相较于等效磁路法和解析法,有限元法能精确处理复杂几何、材料非线性和动态效应。重点介绍了三维静磁场仿真(用于计算稳态磁场、电磁力和电感)和瞬态磁场仿真(用于分析动态过程和损耗)的关键设置与后处理方法。通过有限元分析可验证承载力、评估损耗分布并指导结构优化,形成"磁路设计-有限元验证-参数修正"的闭环设计流程,为磁轴承的精确设计和性能评估提供可靠依据。

技术工作者 1290

RFSoC全面解析(八)—— ZCU111 RFSoC评估工具的上位机界面

下面的内容的参考文献为:XILINX公司文档UG1287。 XILINX公司提供了一个RFSoC的ADC/DAC性能的评估工具或者叫评估系统,这个文档就是讲如何使用这个评估工具的。 整个评估系统总的框图如上图所示,评估系统由上位机、ZCU111开发板、子卡以及网线、射频线缆组成。 ZCU111开发板内主要使用的RFSoC外设为时钟驱动和DDR4,RFSoC的PS部分和PL部分都使用了。 PS部分发挥的功能为通过网口与上位机通信,通过IIC总线控制时钟驱动芯片以及数据流控制等;PL部分发挥的功能为

4380

【算法练习】2.5每日一题滑动窗口两种写法 leetcode1208. 尽可能使字符串相等

题目链接:https://leetcode-cn.com/problems/get-equal-substrings-within-budget/ 1208. 尽可能使字符串相等 难度中等69 给你两个长度相同的字符串,s和t。 将s中的第i个字符变到t中的第i个字符需要|s[i] - t[i]|的开销(开销可能为 0),也就是两个字符的 ASCII 码值的差的绝对值。 用于变更字符串的最大预算是maxCost。在转化字符串时,总开销应当小于等于该预算,这也意味着字符串的...

一蓑烟雨任平生 223

2024年数字IC秋招-格科微-数字电路设计工程师-笔试题

笔试题型:简答题(9个)笔试平台:牛客(电脑监控)笔试时间:2h。

qq_42135020的博客 1605

三连击破---滑动窗口算法---leetcode

本文所讲的滑动窗口算法不涉及计算机网络,只是单纯的算法而已 滑动窗口,顾名思义:就是一个会滑动的窗口【doge】 不难想象,它主要是解决字符串和数组的最优化问题的。关于下面几个题目,我曾花了大量时间尝试贪心和dp,收(mei)效(xie)甚(chu)微(lai)。现场学习滑动算法,连破三题 先举个栗子,我们现在有一个字符串s和字符串t,t为"ABC" ,s为“AWGUACHBGAFCB”,现在要求s中包含"ABC"(按顺序)最短子序列的长度。 我们这样: 1、定义一个双指针left和right,开

qq_61567032的博客 1031

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

leetcode1208尽可能使字符串相等

1208.尽可能使字符串相等 一道很简单的滑动窗口问题 思路是,先找到|s[i]-t[i]|<=cost的位置,定为初始的起点和终点,然后向后遍历,如果把新的塞进来,则终点位置加一,如果不能则窗口向后滑动,因为要找最大的,因此只考虑窗口扩大 class Solution { public: int equalSubstring(string s, string t, int maxCost) { int n=s.size(); if(n==0)return 0;

Healwh的博客 215

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

算法学习day26(滑动窗口)

其实就是在不断寻找最长滑动窗口长度的过程。滑动窗口的大小只能增大不能减小。1.找中间值3。分成两段:1->2\ 3->4->52.中间值作为新的头结点反转5->4->3左边拿一个 右边拿一个。

2301_78191305的博客 973

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Leetcode 1208. 尽可能使字符串相等 题解

题目链接:https://leetcode-cn.com/problems/get-equal-substrings-within-budget/ 滑动窗口自左向右遍历,每次sum加上右指针对应的开销,一旦sum > maxCost,就将左指针右移直到满足条件。每次都更新最大值。 代码如下: class Solution { public: int equalSubstring(s...

BNDSllx的博客 314

【字符串】【滑动窗口+位运算+双指针】1、无重复字符的最长子串+2、尽可能使字符串相等+3、最长优雅子数组+4、移动零+5、反转字符串

【字符串】【滑动窗口+位运算+双指针】1、无重复字符的最长子串+2、尽可能使字符串相等+3、最长优雅子数组+4、移动零+5、反转字符串

weixin_50512050的博客 575

算法之滑动窗口算法

滑动窗口算法基本原理与实践 滑动窗口协议(Sliding Window Protocol),该协议是 TCP协议 的一种应用,用于网络数据传输时的流量控制,以避免拥塞的发生。该协议允许发送方在停止并等待确认前发送多个数据分组。由于发送方不必每发一个分组就停下来等待确认。因此该协议可以加速数据的传输,提高网络吞吐量。 滑动窗口算法其实和这个是一样的,只是用的地方场景不一样,可以根据需要调整窗口的大小,有时也可以是固定窗口大小。 滑动窗口算法(Sliding Window Algorithm) Sliding

weixin_49561445的博客 1738

每日算法-250325(复习)

经过几天的算法练习,我对之前一些不太理解的题目进行了复习和重做。

2403_83543687的博客 674

滑动窗口算法基本原理

学过计算机网络的同学,都知道滑动窗口协议(Sliding Window Protocol),该协议是 TCP协议 的一种应用,用于网络数据传输时的流量控制,以避免拥塞的发生。该协议允许发送方在停止并等待确认前发送多个数据分组。由于发送方不必每发一个分组就停下来等待确认。因此该协议可以加速数据的传输,提高网络吞吐量。 滑动窗口算法其实和这个是一样的,只是用的地方场景不一样,可以根据需要调整窗口的大小,有时也可以是固定窗口大小。 滑动窗口算法在一个特定大小的字符串或数组上进行操作,而不在整个字符串和数组上操作,

花明的博客 5125

关于比较字符串判断这个字符串是否是异位词的一点心得(滑动窗口)

今天刷leetcode上的题,遇到了一个异位字符串的题。 看到了评论里别人的题解 public List<Integer> findAnagrams(String s, String p) { List<Integer> res = new ArrayList<>(); int pCnt[] = new int[26]; int n = s.length(); int m = p.length(

abaidaye的博客 350

懒癌写算法(滑动窗口)

本文提供一个滑动窗口的算法模板,主要参照leetcode上fuxuemingzhu大佬的思路。 文章目录前言一、模板代码&思路模板思路二、具体使用题目代码总结 前言 《挑战程序设计竞赛》这本书中把滑动窗口叫做「虫取法」,我觉得非常生动形象。因为滑动窗口的两个指针移动的过程和虫子爬动的过程非常像:前脚不动,把后脚移动过来;后脚不动,把前脚向前移动。 作者:fuxuemingzhu 链接:https://leetcode-cn.com/problems/get-equal-substrings-wi

u013456390的博客 175

三、滑动窗口——9. 找到字符串中所有字母异位词

三、滑动窗口——9. 找到字符串中所有字母异位词

小李的便利店 446

[LeetCode]1208. 尽可能使字符串相等

1208. 尽可能使字符串相等 题目链接:https://leetcode-cn.com/problems/get-equal-substrings-within-budget/ // 滑动窗口 // i 为左边下标,j 为右边下表 // 1. 通过不断右移增加新的字符到窗口中,给定的费用将逐渐减少 // 2. 当费用减少至不够用时,从窗口左边删除字符,费用随之增加 // 3. 当费用增至可以再添加字符时,回到第 1 步继续执行,知道遍历完所有字符为止 class Solution { public:

weixin_40468534的博客 155

leetcode刷题笔记——滑动窗口

leetcode刷题笔记——滑动窗口 目前完成的滑动窗口的leetcode算法题序号: 中等:1208 困难: 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/reconstruct-itinerary 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 文章目录leetcode刷题笔记——滑动窗口算法理解一、1208题:尽可能使字符串相等1.题干2.思路3.代码4. 问题点思考二、1.题干2.解题思路3.代码4. 注意点三、1.

md_Ji的博客 921
上一篇: Netty-基于Netty实现RPC-仿Dubbo
下一篇: Netty-ChannelHandler-生命周期/顺序解读
酱油瓶啤酒杯
博客等级 码龄8年 35粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值