Rotate String
Given a string and an offset, rotate string by offset. (rotate from left to right)
Given "abcdefg"
.
offset=0 => "abcdefg"
offset=1 => "gabcdef"
offset=2 => "fgabcde"
offset=3 => "efgabcd"
分析:利用 (A^TB^T)^T = BA
1 public class Solution { 2 /** 3 * @param str: an array of char 4 * @param offset: an integer 5 * @return: nothing 6 */ 7 public void rotateString(char[] str, int offset) { 8 if (str == null || str.length <= 1) return; 9 offset = offset % str.length; 10 if (offset == 0) return; 11 12 int p = str.length - 1 - offset; 13 14 swapFromIToJ(str, 0, p); 15 swapFromIToJ(str, p + 1, str.length - 1); 16 swapFromIToJ(str, 0, str.length - 1); 17 } 18 19 public void swapFromIToJ(char[] str, int i, int j) { 20 while (i < j) { 21 char temp = str[i]; 22 str[i] = str[j]; 23 str[j] = temp; 24 i++; 25 j--; 26 } 27 } 28 }
转载于:https://www.cnblogs.com/beiyeqingteng/p/5645642.html
Rotate String相关推荐
- 62 旋转字符串(Rotate String)
文章目录 1 题目 2 解决方案 2.1 思路 2.2 时间复杂度 2.3 空间复杂度 3 源码 1 题目 题目:旋转字符串(Rotate String) 描述:给定一个字符串str和一个偏移量,根据 ...
- leetcode 796. Rotate String | 796. 旋转字符串(KMP)
题目 https://leetcode.com/problems/rotate-string/ 题解 左神讲的 KMP class Solution {public boolean rotateStr ...
- leetcode 796. 旋转字符串(Rotate String)
目录 题目描述: 示例 1: 示例 2: 解法: 题目描述: 给定两个字符串, A 和 B. A 的旋转操作就是将 A 最左边的字符移动到最右边. 例如, 若 A = 'abcde',在移动一次之后结 ...
- Leetcode796.Rotate String旋转字符串
给定两个字符串, A 和 B. A 的旋转操作就是将 A 最左边的字符移动到最右边. 例如, 若 A = 'abcde',在移动一次之后结果就是'bcdea' .如果在若干次旋转操作之后,A 能变成B ...
- IM4Java + GraphicsMagick 实现高清图片剪裁处理
2019独角兽企业重金招聘Python工程师标准>>> 简单介绍 GraphicsMagick是ImageMagick的一个分支,相对于ImageMagick而言,TA处理速度更快, ...
- 程序员编程艺术第一章(第二节)
第二节:两指针逐步翻转 思路: abc defghi,要 abc 移动至最后 abc defghi->def abcghi->def ghiabc 定义俩指针, p1 指向 ch[0], ...
- React Native StyleSheet 样式属性
2019独角兽企业重金招聘Python工程师标准>>> 简介 React Native StyleSheet 提供一系类的对样式(类似css)属性. 其中包括 Layout 布局相关 ...
- 从零学React Native之07View
View 组件是React Native最基本的组件.绝大部分其他React Native 组件. View组件的颜色和边框 backgroundColor 键用来指定颜色. RN 0.19版本开始, ...
- SpringBoot 集成 thumbnailator (图片缩放,区域裁剪,水印,旋转,保持比例)保姆级教程(含代码)
Thumbnailator 是 Google 开源的图片处理库,支持:图片缩放,区域裁剪,水印,旋转,保持比例.详细介绍可以百度或官网,话不多说,直接上代码,具体要结合自己的业务需要进行使用(有些复杂 ...
最新文章
- day4 匿名函数、装饰器、生成器、迭代器、内置函数、 json 与 pickle 模块
- linux下单节点oracle数据库间ogg搭建
- spring中aop设计与实现
- Android多线程源码学习笔记一:handler、looper、message、messageQueue
- android 版本28 通知栏图标,【专题分析】应用图标、通知栏适配
- [No0000166]CPU的组成结构及其原理
- (转)海岸线提取完成, 海浪排岸效果
- 软考网络管理员学习笔记1之第一章计算机硬件基础
- asp.net页面的验证码代码
- 计算机编程关键字一,和计算机编程有关的101条伟大的名言
- Linux下elasticsearch的安装与使用
- 链路层发现协议LLDP
- 新手学堂之有刷/无刷动力电调与马达知识
- yocto的hello world
- 不确定性,进化与经济理论
- android字母数生成器,随机数生成器app下载-随机数生成器 安卓版v1.0-PC6安卓网
- 小组项目的初步构建与需求分析
- SQL语句(四)联表查询
- linux序列拼接软件,EST序列的聚类、拼接以及纠错是怎样进行的,推荐使用那些软件?!...
- 晶体振荡器与晶体谐振器的区别
热门文章
- 【牛客 - 188D 】愤怒(01滚动数组优化dp,括号匹配方案个数,tricks)
- 【牛客 - 330F】Applese 的QQ群(拓扑排序,二分)
- 【牛客 - 302哈尔滨理工大学软件与微电子学院第八届程序设计竞赛同步赛(低年级)】小乐乐切割方块(思维,水题)
- matlab计算流函数,hanyeah
- 阿里mysql 二进制_Mysql binlog 之阿里canal
- plan explorer mysql_plan explorer支持oracle吗
- linux-如何限制普通用户的磁盘使用空间-磁盘配额quota,Linux系统下如何进行磁盘配额Quota的设置...
- 【算法系列之三】单链表反转
- JSP 之输出九九乘法表
- 1151压力变送器型号_日本进口横河EJA530E压力变送器型号解读!