LeetCode: 344 Reverse String

Posted 玲珑子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode: 344 Reverse String相关的知识,希望对你有一定的参考价值。

题目:

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

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

 代码:

 自己的:

 1 class Solution {
 2 public:
 3     string reverseString(string s) {
 4         stack<char> tem;
 5         string result;
 6         for ( auto c : s)
 7             tem.push(c);
 8         while (!tem.empty()){
 9             result += tem.top();
10             tem.pop();
11         }
12         return result;
13     }
14 };

别人的:

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

别人的效率好。

swap()函数:交换

 

以上是关于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