Day17——双指针专题

心已赠人 2024-04-01 09:58 139阅读 0赞

文章目录

      • 36.移除元素
      • 37.反转字符串
      • 38.替换空格

#

36.移除元素

思路:快慢指针,分别设置两个指针,快指针遍历需要的数组,将需要的数组付给slow指向的数组

实现代码:

  1. class Solution {
  2. public int removeElement(int[] nums, int val) {
  3. int slowIndex = 0;
  4. for (int fastindex = 0;fastindex<nums.length;fastindex++){
  5. if(nums[fastindex]!=val){
  6. nums[slowIndex] = nums[fastindex];
  7. slowIndex++;
  8. }
  9. }
  10. return slowIndex;
  11. }
  12. }

37.反转字符串

实现代码:

  1. class Solution {
  2. public void reverseString(char[] s) {
  3. int j = s.length-1;
  4. int i = 0;
  5. while(j>i){
  6. char temp = s[i];
  7. s[i] = s[j];
  8. s[j] = temp;
  9. i++;
  10. j--;
  11. }
  12. }
  13. }

38.替换空格

实现代码:

  1. class Solution {
  2. public String replaceSpace(String s) {
  3. StringBuffer res = new StringBuffer();
  4. for(Character c : s.toCharArray()){
  5. //由字符串转换成字符串数组
  6. if(c == ' ') res.append("%20");
  7. else res.append(c);
  8. }
  9. return res.toString();//由字符串数组转换成字符串
  10. }
  11. }

发表评论

表情:
评论列表 (有 0 条评论,139人围观)

还没有评论,来说两句吧...

相关阅读

    相关 指针专题

    双指针(Two Pointers):指的是在遍历元素的过程中,不是使用单个指针进行访问,而是使用两个指针进行访问,从而达到相应的目的。 在数组的区间问题上,暴力算法的时间复

    相关 指针专题

    指针专题 作者:anangcl 一、 数组的指针、指针数组以及指向指针的指针   考虑数组的指针的时候我们要同时考虑类型和维数这两个属性。换一句话,就是说一