博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
344.Reverse String
阅读量:4654 次
发布时间:2019-06-09

本文共 2225 字,大约阅读时间需要 7 分钟。

Write a function that takes a string as input and returns the string reversed.

Example:

Given s = "hello", return "olleh".

Java(3ms):

1 public class Solution { 2     public String reverseString(String s) { 3         if (s.length() <= 1){ 4              return s ; 5          } 6         char a[] = s.toCharArray() ; 7         int i  = 0 ; 8         int j  = s.length() - 1 ; 9         while(i < j ){10             char t = a[i] ;11             a[i] = a[j] ;12             a[j] = t ;13             i++ ;14             j-- ;15         }16         return new String(a) ;17     }18 }

 

C++(9ms):

1 class Solution { 2 public: 3     string reverseString(string s) { 4         int i = 0 ; 5         int j = s.size()-1 ; 6         while(i < j){ 7             swap(s[i++],s[j--]); 8         } 9         return s ;10     }11 };

 

 

C++(9ms):

1 class Solution { 2 public: 3     string reverseString(string s) { 4         if (s == "") 5           return s ; 6         if (s.length() == 1) 7           return s ; 8         int i = 0 ; 9         int j = s.length() - 1 ;10         while(i < j){11             s[i] = s[i]^s[j] ;12             s[j] = s[i]^s[j] ;13             s[i] = s[i]^s[j] ;14             i++ ;15             j-- ;16         }17         return s ;18     }19 };

 

 

C++(9ms):

1 class Solution { 2 public: 3     string reverseString(string s) { 4         int len = s.length(); 5         string ans = "" ; 6         for (int i = len - 1 ; i >= 0 ; i--){ 7             ans += s[i] ; 8         } 9         return ans ;10     }11 };

 

 

C++(12ms):

class Solution {public:    string reverseString(string s) {        reverse(s.begin(),s.end()) ;        return s ;    }};

 

 

C++(26ms):

1 class Solution { 2 public: 3     string reverseString(string s) { 4         if (s == "") 5           return s ; 6         if (s.length() == 1) 7           return s ; 8         string leftString = s.substr(0,s.length()/2) ; 9         string rightString = s.substr(s.length()/2,s.length()) ;10         return reverseString(rightString) + reverseString(leftString) ;11     }12 };

 

C++(9ms):

1 class Solution {2 public:3     string reverseString(string s) {4         return {s.rbegin(),s.rend()};5     }6 };

 

转载于:https://www.cnblogs.com/mengchunchen/p/5990884.html

你可能感兴趣的文章