当前位置:   article > 正文

力扣344-反转字符串——双指针法_双指针法反转数组

双指针法反转数组

问题描述

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。

不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。

问题求解

  • 由于要反转整个字符数组,所以便联想到双指针求解;
  • 建立两个指针first指向数组首部,last指向数组尾部;
  • 每循环一次,交换两个指针所指向的字符,直至遍历完整个数组。
  • 这道题属于非常简单的题,用于巩固。

输入输出示例

代码

  1. class Solution {
  2. public void reverseString(char[] s) {
  3. int len = s.length;
  4. int first = 0;
  5. int last = len - 1;
  6. char tem;
  7. while(first <= last){
  8. tem = s[first];
  9. s[first] = s[last];
  10. s[last] = tem;
  11. first++;
  12. last--;
  13. }
  14. }
  15. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/87301
推荐阅读
相关标签
  

闽ICP备14008679号