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 开源的图片处理库,支持:图片缩放,区域裁剪,水印,旋转,保持比例.详细介绍可以百度或官网,话不多说,直接上代码,具体要结合自己的业务需要进行使用(有些复杂 ...
最新文章
- win7下显示linux文本文件不换行
- 《Linux内核精髓:精通Linux内核必会的75个绝技》一HACK #6 使用localmodconfig缩短编译时间...
- javase-NIO
- 互联网常识(持续更新)
- 化浆池是什么东西_一种双工位浆化池的制作方法
- 读取properties
- delphi开发LINUX程序,DELPHI开发LINUX包
- 太原计算机专业专科大学排名,太原【计算机学校】排名
- 根域名服务器意味着什么?(转)
- axis2调用webservice
- opcdaclient 对com组件的调用返回了错误hresult_【分享】易语言编程常见错误新手篇...
- java万年历代码_JAVA实现的简单万年历代码
- 百度深度学习工程师认证(已通过)
- 佳能相机G7 Mark Ⅱ (测光与对焦)
- 安全专业委员会发言_安全专业委员会发言稿
- HC05蓝牙串口通信模块
- 【数据库】FaceDataset常用的人脸数据库
- 快速校验 input内容规则
- 基于国服DOTA2的反和谐vpk
- 组态王bitset用法_组态王使用常遇到问题
热门文章
- 【ZOJ - 2836 】Number Puzzle (容斥原理)
- 【CodeForces - 195A】Let's Watch Football (追及问题,模拟)
- php获取post全部数据,PHP获取POST数据的几种方法汇总_PHP教程
- java web svn_如何搭建svnadmin,一个简单的svnWEB页面
- Android入门(六) | Activity 的启动模式 及 生产环境中关于 Activity 的小技巧
- sizeof运算符运算结果小汇
- Pandas对象的层次化索引——【from_tuples()、from_arrays()、from_product()、swaplevel()、sort_index()、sort_values()】
- leetcode9 回文数
- 在GCC和Visual Studio中使用hash_map
- MachineLearning(3)-流型