【算法练级js+java】旋转字符串判断是否相等

news2024/10/6 6:52:23

每一天一道算法题训练,努力打开编程思维,才能进大厂光明正大的泡心仪的小姐姐!!(手动捂脸)
在这里插入图片描述

题目

/**
* 给定字符创A和B
* 旋转字符串A,就是把最左边的移动到最右边
* 比如A=‘abcde’,在移动一次之后结果就是bcdea
* 如果若干次之后,A能变成B,返回true,否则返回false
**/

代码实现

  1. 【js代码】
let strA = "abcde";
    let strB = "cdeab";

    const result = check(strA,strB)
    console.log("🚀 ~ result:", result)

    function check(strA,strB){
      if(!strA || !strB || strA.length != strB.length) return false
      for (let index = 0; index < strA.length; index++) {
          strA = rotate(strA)
          if(strA == strB){
            return true
          }
      }
      return false
    }

    function rotate(strA){
      if(!strA) return ''
      let start = strA[0];
      let end = strA.substring(1)
      return end + start
    }

运行结果
在这里插入图片描述
在这里插入图片描述

  1. 【java代码】
public class stringdemo05 {
    public static void main(String[] args) {
        //
        String strA = "abcde";
        String strB = "cdeab";

        boolean res = check(strA,strB);
        System.out.printf("🚀 ~ result:第一个字符串是%s,第二个字符串是%s",strA,strB);
        System.out.print(" 返回结果是" + res);

    }
    public static boolean check(String strA,String strB){
        for (int i = 0; i < strA.length(); i++) {
            strA = rotate(strA);
            if(strA.equals(strB)){
                return true;
            }
        }
        return  false;
    }
    public static String rotate(String str){

        char start = str.charAt(0);
        String end = str.substring(1);
        return  end + start;
    }
}

在这里插入图片描述
在这里插入图片描述
这样就实现了需求效果!!

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

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

相关文章

揭秘新时代的内容创作:一键生成的AI黑科技

在数字媒体的浪潮下&#xff0c;内容创作已成为连接人与信息的重要桥梁。然而&#xff0c;头条、公众号等平台上的爆文创作&#xff0c;对很多内容创作者来说却是一项挑战。“从选题到找素材&#xff0c;再到成文&#xff0c;”这个过程不仅耗时至少1到2个小时&#xff0c;而且…

word图片水印

一、word中旧水印如何删除 打开word模板&#xff0c;想要删除旧水印&#xff0c;如下图所示操作&#xff0c;但是旧水印删除不掉。 以为上传新水印图片会替换掉旧水印&#xff0c;结果显示了2个水印&#xff0c;要怎么删除呢&#xff1f; 如下截图所示&#xff0c;双击打开页…

如何在CentOS上解决Python版本冲突和路径问题

在使用CentOS等Linux系统时&#xff0c;安装多个Python版本可能会导致版本冲突和路径问题。当你运行python3命令时&#xff0c;系统可能不会调用你期望的Python版本&#xff0c;这可能会导致运行错误或者其他依赖问题。下面是一篇详细的博客&#xff0c;介绍如何解决这种Python…

微信小程序发布,推广等步骤

发布小程序 一.首先写好小程序后在微信开发者工具的右上角找到上传并点击 2.填写本次开发版本的版本号和备注信息&#xff0c;点击上传 3.登录微信小程序管理后台 微信公众平台 在管理处找到版本管理 4.在版本管理页面可以看到刚刚提交的小程序已经上传到这里&#xff0c;点击…

如何在两台电脑之间共享文件(超详细步骤)

所需物品&#xff1a; 两台以上电脑一个路由器 步骤1&#xff1a; 将两台电脑用网线或无线网连接至同一路由器下 只有在同一路由器下才能形成局域网&#xff0c;从而才能正常共享文件。例如通常打印机和电脑也需要保持在同一路由器下才能正常打印文件。 步骤2&#xff1a;设置…

【全开源】Java洗衣清洁服务同城清洗服务小程序源码

特色功能&#xff1a; 在线预约与支付&#xff1a;用户可以通过洗衣小程序在线预约洗衣服务&#xff0c;并选择支付方式进行支付&#xff0c;如微信支付、支付宝等。这种在线预约和支付的方式极大地方便了用户&#xff0c;提高了服务的便捷性。智能推荐与选择&#xff1a;根据…

Web 安全基础理论

Web 安全基础理论 培训、环境、资料、考证 公众号&#xff1a;Geek极安云科 网络安全群&#xff1a;624032112 网络系统管理群&#xff1a;223627079 网络建设与运维群&#xff1a;870959784 移动应用开发群&#xff1a;548238632 短视频制作群&#xff1a; 744125867极安云…

python编程“常识”【pip安装路径、计算、pycharm中的terminal运行前面的PS修改成自己环境】

一、默认的pip install包路径&#xff1a; pip show pip 二、计算 打开cmd&#xff0c;输入&#xff1a; ipython 例如你要计算2的13次方&#xff1a; ok. 三、pycharm中的terminal运行前面的PS修改成自己环境 未修改前&#xff1a; 修改过程&#xff1a; 打开设置找到too…

安卓模拟器访问主机局域网

误打误撞能够访问主机局域网了 但是不太懂是因为哪一部分成功的 先记录一下 PC&#xff1a;mac系统 安卓编译器&#xff1a;Android Studio 步骤 只需要在PC上进行设置 1. 在【设置】中&#xff0c;打开已连接的Wi-Fi的【详细信息】 2. TCP/IP --> 配置IPv6&#xff0c;修…

STM32--4G DTU 及 阿里云

模块概述 ATK-IDM750C/IDM751C 是正点原子(ALIENTEK)团队开发的一款高性能 4G Cat1 DTU 产品&#xff0c; 支持移动 4G、联通 4G 和电信 4G 手机卡。它以高速率、低延迟和无线数传作为核心功能&#xff0c; 可快速解决应用场景下的无线数传方案。 它支持 TCP/UDP/HTTP/MQTT/DN…

电脑windows系统压缩解压软件-Bandizip

一、软件功能 Bandizip是一款功能强大的压缩和解压缩软件&#xff0c;具有快速拖放、高速压缩、多核心支持以及广泛的文件格式支持等特点。 Bandizip软件的功能主要包括&#xff1a; 1. 支持多种文件格式 Bandizip可以处理多种压缩文件格式&#xff0c;包括ZIP, 7Z, RAR, A…

2024-05-09 Ubuntu上面用ffmpeg把jpeg图像转成yuv、rgb格式文件,通过ffplay命令显示这些文件成图像

一、安装 FFmpeg: 如果你的Ubuntu系统中没有安装 FFmpeg,可以通过以下命令来安装: sudo apt update sudo apt install ffmpeg 二、测试原图,cowboy_girl_1024X1280.jpeg,分辨率是1024X1280. 三、使用 ffmpeg -pix_fmts 命令查看ffmpeg支持的格式 ffmpeg -pix_fmts 四、使…

如何预防最新的Mallox变种rmallox勒索病毒感染您的计算机?

导言&#xff1a; 在数字化浪潮中&#xff0c;网络安全如履薄冰。新兴的.rmallox勒索病毒&#xff0c;以其独特的攻击方式和狡猾的战术&#xff0c;给全球网络安全带来了前所未有的挑战。本文将深入剖析.rmallox勒索病毒的战术&#xff0c;并提出一系列创新的防御策略&#xf…

[uniapp 地图组件] 小坑:translateMarker的回调函数,会调用2次

大概率是因为旋转和移动是两个动画&#xff0c;动画结束后都会分别调用此函数 即使你配置了 【不旋转】它还是会调用两次&#xff0c; 所以此处应该是官方的bug

【Python】什么是皮尔森系数

我不完美的梦 你陪着我想 不完美的勇气 你说更勇敢 不完美的泪 你笑着擦干 不完美的歌 你都会唱 我不完美心事 你全放在心上 这不完美的我 你总当做宝贝 你给我的爱也许不完美 但却最美 &#x1f3b5; 周冬雨《不完美女孩》 皮尔森相关系数&#xff08;Pe…

2024面试自动化测试面试题【含答案】

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

《ESP8266通信指南》14-连接WIFI(基于Lua)

往期 《ESP8266通信指南》13-Lua 简单入门&#xff08;打印数据&#xff09;-CSDN博客 《ESP8266通信指南》12-Lua 固件烧录-CSDN博客 《ESP8266通信指南》11-Lua开发环境配置-CSDN博客 《ESP8266通信指南》10-MQTT通信&#xff08;Arduino开发&#xff09;-CSDN博客 《ES…

20232937文兆宇 2023-2024-2 《网络攻防实践》实践九报告

20232937文兆宇 2023-2024-2 《网络攻防实践》实践九报告 1.实践内容 1.实践目标 本次实践的对象是一个名为pwn1的linux可执行文件。 该程序正常执行流程是&#xff1a;main调用foo函数,foo函数会简单回显任何用户输入的字符串。 该程序同时包含另一个代码片段&#xff0c;…

数字化转型浪潮下,信创如何破浪前行,六招助你稳中求胜

信创改造落地过程中的六个难点及应对经验 技术生态迅猛发展&#xff0c;尚未成熟且多元化&#xff0c;信创技术栈应用经验匮乏&#xff0c;导致改造落地工作面临重重挑战。在此背景下&#xff0c;如何克服技术难题&#xff0c;推动信创改造顺利实施&#xff0c;成为业界亟待解决…

论文阅读:Real-Time 3D Model Acquisition

前言&#xff1a; 本文为记录自己在NeRF学习道路的一些笔记&#xff0c;包括对论文以及其代码的思考内容。 小编目前在探索3DAIGC和3D打印交叉研究&#xff0c;在这方面有想法、经验的朋友都可以在b站留言交流下&#xff01;欢迎&#xff01; 公众号&#xff1a; AI知识物语…