【LeetCode】344. Reverse String
来源:互联网 发布:数据运营支持面试 编辑:程序博客网 时间:2024/05/16 07:24
Write a function that takes a string as input and returns the string reversed.
Example:
Given s = "hello", return "olleh".
public class ResverseString {public static String reverseString(String s) {if(s == null || s.length() < 2) return s;char[] ch = s.toCharArray();int i = 0;int j = s.length() - 1;while (i < j) {char c = ch[i];ch[i] = ch[j];ch[j] = c;i++;j--;}return new String(ch);}public static String reverseStringB(String s) {return new StringBuilder(s).reverse().toString();}/** * bit manipulation * @param s * @return */public static String reverseStringC(String s) {byte[] bytes = s.getBytes();int i = 0;int j = s.length() - 1;while(i < j) {bytes[i] = (byte) (bytes[i] ^ bytes[j]);bytes[j] = (byte) (bytes[i] ^ bytes[j]); //bytes[i] ^ bytes[j] ^ bytes[j] = bytes[i];bytes[i] = (byte) (bytes[i] ^ bytes[j]); //bytes[i] ^ bytes[j] ^ bytes[i] = bytes[j];i++;j--;}return new String(bytes);}public static String reverseStringD(String s) {int len = s.length();if(len <= 1) return s;String leftStr = s.substring(0, len / 2);String rightStr = s.substring(len / 2, len);return reverseString(rightStr) + reverseString(leftStr);}public static void main(String[] args) {String s = "hello";System.out.println(reverseString(s));System.out.println(reverseStringB(s));System.out.println(reverseStringC(s));System.out.println(reverseStringD(s));}}
0 0
- leetcode--344. Reverse String
- LeetCode 344. Reverse String
- LeetCode 344. Reverse String
- Leetcode:344. Reverse String
- LeetCode *** 344. Reverse String
- LeetCode *** 344. Reverse String
- [leetcode] 344. Reverse String
- <LeetCode>344. Reverse String
- Leetcode.344. Reverse String
- LeetCode-344.Reverse String
- [leetcode]344. Reverse String
- Leetcode 344. Reverse String
- [leetcode] 344. Reverse String
- [Leetcode]344. Reverse String
- LeetCode - 344. Reverse String
- [leetcode]344. Reverse String
- LeetCode 344. Reverse String
- 【Leetcode】344. Reverse String
- Lumen5.3.2无法使用composer的make:model命令
- 细胞分割相关参考资料
- 指针
- 安卓Andriod使用入门(二十四)【爬取网络小说】
- Caffe Model Zoo
- 【LeetCode】344. Reverse String
- (7)CSS动画-页面特效
- 解释为什么基于“推”的Gossip传播⽐基于“拉”的 Gossip传播要慢?
- http状态码--详解
- markdown学习
- c++用指针遍历一维数组和二维数组
- Linux笔记
- “friend声明友元函数,友元函数却依旧无法访问该类的私有属性”的解决方法
- Caffe-CIFAR10实验