zoukankan      html  css  js  c++  java
  • 替换空格

    题目描述:

      请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

    解题思路:

      使用额外的空间存储结果即可。判断一下为空或者没有空格的情况即可。

    代码:

     1 class Solution {
     2 public:
     3     void replaceSpace(char *str,int length) {
     4         if(str == NULL)
     5             return;
     6         int spaceNum = 0;
     7         for(int i = 0; i < length; i++)
     8         {
     9             if(str[i] == ' ')
    10                 spaceNum++;
    11         }
    12         if(spaceNum == 0)
    13             return;
    14         char *t = new char[length + spaceNum * 3];
    15         int p = 0;
    16         for(int i = 0; i < length; i++)
    17         {
    18             if(str[i] == ' ')
    19             {
    20                 t[p++] = '%';
    21                 t[p++] = '2';
    22                 t[p++] = '0';
    23             }
    24             else
    25                 t[p++] = str[i];
    26         }
    27         t[p] = '';
    28         strcpy(str,t);
    29     }
    30 };
  • 相关阅读:
    KMP算法
    快速排序的三种分区方法
    广义表
    外部排序(败者树、置换-选择排序、最佳归并树)
    内部排序
    散列表
    B树和B+树
    查找(顺序、折半、分块)
    关键路径
    拓扑排序
  • 原文地址:https://www.cnblogs.com/wktwj/p/8576187.html
Copyright © 2011-2022 走看看