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

leetcode尊享面试 100 题 - 1427. 字符串的左右移

尊享面试 100 题是Leetcode会员专享题单

1427. 字符串的左右移

力扣题目链接

给定一个包含小写英文字母的字符串 s 以及一个矩阵 shift,其中 shift[i] = [direction, amount]:
direction 可以为 0 (表示左移)或 1 (表示右移)。
amount 表示 s 左右移的位数。
左移 1 位表示移除 s 的第一个字符,并将该字符插入到 s 的结尾。
类似地,右移 1 位表示移除 s 的最后一个字符,并将该字符插入到 s 的开头。
对这个字符串进行所有操作后,返回最终结果。

示例 1:

输入:s = "abc", shift = [[0,1],[1,2]]
输出:"cab"
解释:
[0,1] 表示左移 1 位。 "abc" -> "bca"
[1,2] 表示右移 2 位。 "bca" -> "cab"

示例 2:

输入:s = "abcdefg", shift = [[1,1],[1,1],[0,2],[1,3]]
输出:"efgabcd"
解释: 
[1,1] 表示右移 1 位。 "abcdefg" -> "gabcdef"
[1,1] 表示右移 1 位。 "gabcdef" -> "fgabcde"
[0,2] 表示左移 2 位。 "fgabcde" -> "abcdefg"
[1,3] 表示右移 3 位。 "abcdefg" -> "efgabcd"

提示:

  • 1 <= s.length <= 100
  • s 只包含小写英文字母
  • 1 <= shift.length <= 100
  • shift[i].length == 2
  • 0 <= shift[i][0] <= 1
  • 0 <= shift[i][1] <= 100

思路:

/*** @param {string} s* @param {number[][]} shift* @return {string}*/
var stringShift = function(s, shift) {let left = 0, right = 0,len =s.lengthfor(let i = 0; i< shift.length;i++){if(shift[i][0] === 0){left = s.slice(shift[i][1]%len)right = s.slice(0,shift[i][1]%len)}else{left = s.slice(-shift[i][1]%len)right = s.slice(0,-shift[i][1]%len)}s = left + right}return s
};

更多查看

相关文章:

leetcode尊享面试 100 题 - 1427. 字符串的左右移

尊享面试 100 题是Leetcode会员专享题单 1427. 字符串的左右移 力扣题目链接 给定一个包含小写英文字母的字符串 s 以及一个矩阵 shift&#xff0c;其中 shift[i] [direction, amount]&#xff1a; direction 可以为 0 &#xff08;表示左移&#xff09;或 1 &#xff08;表…...

进来看看!跨境电商要这样选品才能做出爆款

今天要聊的是跨境电商怎么做系列的第三期&#xff0c;前面两期聊完平台和货源之后&#xff0c;就到了选品。目前网络上很多都是告诉你不同平台要怎么选品。龙哥这期有些不同&#xff0c;不会和你说哪个品类最受欢迎&#xff0c;而是告诉你你要怎么去选择出适合自己、适合市场的…...

什么是深度学习?

目录 简介 深度学习的由来 深度学习未来的趋势 总结 简介 深度学习是在20世纪80年代被提出来的&#xff0c;主要是由加拿大的计算机科学家Geoffrey Hinton、Yoshua Bengio、Yann LeCun等人发起的。Geoffrey Hinton等人在经过多年的研究和实践之后&#xff0c;…...

追梦之旅【数据结构篇】——看看小白试如何利用C语言“痛”撕堆排序

追梦之旅【数据结构篇】——看看小白试如何利用C语言“痛”撕堆排序 ~&#x1f60e; 前言&#x1f64c;堆的应用 —— 堆排序算法&#xff1a;堆排序算法源代码分享运行结果测试截图&#xff1a; 总结撒花&#x1f49e; &#x1f60e;博客昵称&#xff1a;博客小梦 &#x1f60…...

python版pytorch模型转openvino及调用

一、openvino安装 参看官方文档https://www.intel.com/content/www/us/en/developer/tools/openvino-toolkit/download.html 安装命令是根据上面的选择生成。这里安装了pytorch和onnx依赖。 二、pytorch模型转opnvino模型推理 import os import time import cv2 import nu…...

TensorFlow 机器学习秘籍第二版:9~11

原文&#xff1a;TensorFlow Machine Learning Cookbook 协议&#xff1a;CC BY-NC-SA 4.0 译者&#xff1a;飞龙 本文来自【ApacheCN 深度学习 译文集】&#xff0c;采用译后编辑&#xff08;MTPE&#xff09;流程来尽可能提升效率。 不要担心自己的形象&#xff0c;只关心如何…...

【苏州数字力量】面经 base上海

文章目录 【苏州数字力量】面经 base上海Java基础面1.说一下常见的数据类型、大小、以及他们的封装类2.重载和重写的区别3.谈谈Java的引用方式4.String有些什么方法5.String、StringBuffer、StringBuilder的区别是什么6.谈一下static有哪些用法7.谈一下常见的访问修饰符有哪些&…...

FVM链的Themis Pro(0x,f4) 5日IDO超百万美元,或让Filecoin逆风翻盘

交易一直是DeFi乃至web3领域最经久不衰的话题&#xff0c;也因此催生了众多优秀的去中心化协议&#xff0c;如Uniswap和Curve。这些协议逐渐成为了整个系统的基石。 在永续合约方面&#xff0c;DYDX的出现将WEB2时代的订单簿带回了web3。其链下交易的设计&#xff0c;仿佛回到了…...

webserve简介

目录 I/O分类I/O模型阻塞blocking非阻塞 non-blocking&#xff08;NIO&#xff09;IO复用信号驱动异步 webServerHTTP简介概述工作原理HTTP请求头格式HTTP请求方法HTTP状态码 服务器编程基本框架两种高效的事件处理模式Reactor模式Proactor模拟 Proactor 模式 线程池 I/O分类 …...

分析型数据库:MPP 数据库的概念、技术架构与未来发展方向

随着企业数据量的增多&#xff0c;为了配合企业的业务分析、商业智能等应用场景&#xff0c;从而驱动数据化的商业决策&#xff0c;分析型数据库诞生了。由于数据分析一般涉及的数据量大&#xff0c;计算复杂&#xff0c;分析型数据库一般都是采用大规模并行计算或者分布式计算…...

微服务高级篇学习【4】之多级缓存

文章目录 前言一 多级缓存二 JVM进程缓存2.1 案例导入2.1.1 使用docker安装mysql2.1.2 修改配置2.1.3 导入项目工程2.1.4 导入商品查询页面2.1.5 反向代理 2.2 初识Caffeine2.3 实现JVM进程缓存 三 Lua脚本入门3.1 安装Lua3.2 Lua语法学习 四 实现多级缓存4.1 OpenResty简介4.2…...

知乎版ChatGPT「知海图AI」加入国产大模型乱斗,称效果与GPT-4持平

“2023知乎发现大会”上&#xff0c;知乎创始人、董事长兼CEO周源和知乎合作人、CTO李大海共同宣布了知乎与面壁智能联合发布“知海图AI”中文大模型。 周源据介绍&#xff0c;知乎与面壁智能达成深度合作&#xff0c;共同开发中文大模型产品并推进应用落地。目前&#xff0c;知…...

邮件发送配置

QQ邮箱发送和接收配置&#xff1a; POP3/SMTP协议 接收邮件服务器&#xff1a;pop.exmail.qq.com &#xff0c;使用SSL&#xff0c;端口号995 发送邮件服务器&#xff1a;smtp.exmail.qq.com &#xff0c;使用SSL&#xff0c;端口号465 海外用户可使用以下服务器 接收邮件服务器…...

【Open CASCADE -生成MFC和QT事例方式】

源代码目录 adm目录&#xff1a;包含编译OCCT的相关工程; adm/cmake目录&#xff1a;包含使用CMake构建OCCT的相关处理脚本; adm/msvc目录&#xff1a;包含window平台 Visual C 2010, 2012, 2013, 2015, 2017 and 2019等版本的32/64平台solutinon文件; data目录&#xff1a; 包…...

python 笔记:PyTrack(将GPS数据和OpenStreetMap数据进行整合)【官网例子解读】

论文笔记&#xff1a;PyTrack: A Map-Matching-Based Python Toolbox for Vehicle Trajectory Reconstruction_UQI-LIUWJ的博客-CSDN博客4 0 包的安装 官网的两种方式我都试过&#xff0c;装是能装成功&#xff0c;但是python import PyTrack包的时候还是显示找不到Pytrack …...

苦中作乐 ---竞赛刷题31-40(15-20)

&#xff08;一&#xff09;目录 L1-032 Left-pad L1-033 出生年 L1-034 点赞 L1-035 情人节 L1-039 古风排版 &#xff08;二&#xff09;题目 L1-032 Left-pad 根据新浪微博上的消息&#xff0c;有一位开发者不满NPM&#xff08;Node Package Manager&#xff09;的做法…...

100种思维模型之人类误判心理思维模型-49

“我们老得太快&#xff0c;聪明得太迟”——查理芒格。 2005年&#xff0c;81岁的查理芒格认为81岁的他能够比10年前做得更好。他决定对1992年2月2日、1994年10月6日和1995年4月24日的三次演讲稿进行修改&#xff0c;于是就有了这个人类误判心理思维模型——25条人类误判心理学…...

【从零开始学Skynet】实战篇《球球大作战》(十三):场景代码设计(下)

1、主循环 《球球大作战》是一款服务端运算的游戏&#xff0c;一般会使用主循环程序结构&#xff0c;让服务端处理战斗逻辑。如下图所示&#xff0c;图中的 balls 和 foods代表服务端的状态&#xff0c;在循环中执行“ 食物生成”“位置更新”和“碰撞检 测” 等功能&#xff0…...

2023年虚拟数字人行业研究报告

第一章 行业概况 虚拟数字人指存在于非物理世界中&#xff0c;由计算机图形学、图形渲染、动作捕捉、深度学习、语音合成等计算机手段创造及使用&#xff0c;并具有多种人类特征&#xff08;外貌特征、人类表演能力、人类交互能力等&#xff09;的综合产物。虚拟人可分为服务型…...

Oracle 之表的连接类型——舞蹈跳出

嵌套循环&#xff08;Nested Loops Join&#xff09; Oracle 中最基本的连接方法&#xff0c;用于处理数据表之间的连接操作。 嵌套循环是通过对其中一个表&#xff08;外部表&#xff09;进行全循环操作&#xff0c;然后针对每条记录在另一张表&#xff08;内部表&#xff09;…...

后进先出(LIFO)详解

LIFO 是 Last In, First Out 的缩写&#xff0c;中文译为后进先出。这是一种数据结构的工作原则&#xff0c;类似于一摞盘子或一叠书本&#xff1a; 最后放进去的元素最先出来 -想象往筒状容器里放盘子&#xff1a; &#xff08;1&#xff09;你放进的最后一个盘子&#xff08…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

Spring AI与Spring Modulith核心技术解析

Spring AI核心架构解析 Spring AI&#xff08;https://spring.io/projects/spring-ai&#xff09;作为Spring生态中的AI集成框架&#xff0c;其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似&#xff0c;但特别为多语…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币&#xff0c;另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额&#xff0c;返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式&#xff0c;以r为参数&#xff1a; p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]&#xff1b; 此多项式的根为&#xff1a; 尽管看起来这个多项式是特殊的&#xff0c;其实一般的三次多项式都是可以通过线性变换化为这个形式…...

uniapp 开发ios, xcode 提交app store connect 和 testflight内测

uniapp 中配置 配置manifest 文档&#xff1a;manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号&#xff1a;4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...

uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)

UniApp 集成腾讯云 IM 富媒体消息全攻略&#xff08;地理位置/文件&#xff09; 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型&#xff0c;核心实现方式&#xff1a; 标准消息类型&#xff1a;直接使用 SDK 内置类型&#xff08;文件、图片等&#xff09;自…...

DAY 26 函数专题1

函数定义与参数知识点回顾&#xff1a;1. 函数的定义2. 变量作用域&#xff1a;局部变量和全局变量3. 函数的参数类型&#xff1a;位置参数、默认参数、不定参数4. 传递参数的手段&#xff1a;关键词参数5 题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一…...