题目描述
Write a function that reverses a string. The input string is given as an array of characters char[].
Do not allocate extra space for another array, you must do this by modifying the input array in-place with O(1) extra memory.
You may assume all the characters consist of printable ascii characters.
题目大意:反转字符串
样例
Example 1:
Input: [“h”,“e”,“l”,“l”,“o”]
Output: [“o”,“l”,“l”,“e”,“h”]
Example 2:
Input: [“H”,“a”,“n”,“n”,“a”,“h”]
Output: [“h”,“a”,“n”,“n”,“a”,“H”]
python解法
class Solution:
def reverseString(self, s: List[str]) -> None:
"""
Do not return anything, modify s in-place instead.
"""
s.reverse()
Runtime: 220 ms, faster than 97.41% of Python3 online submissions for Reverse String.
Memory Usage: 17.8 MB, less than 10.46% of Python3 online submissions for Reverse String.
题后反思:
- python列表已经实现了反转,并且直接修改对象本身。
C语言解法
void reverseString(char* s, int sSize){
char c;
for (int i=0;i<sSize/2;i++)
{
c = s[i];
s[i] = s[sSize-i-1];
s[sSize-i-1] = c;
}
}
Runtime: 48 ms, faster than 66.14% of C online submissions for Reverse String.
Memory Usage: 13.6 MB, less than 40.00% of C online submissions for Reverse String.
题后反思:无
文中都是我个人的理解,如有错误的地方欢迎下方评论告诉我,我及时更正,大家共同进步