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

    题目描述

    请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
     
    思路:
    替换空格,先遍历一遍记录字符串中空格数量,算出替换后字符串长度,从后往前替换。
     
     1 //length为牛客系统规定字符串输出的最大长度,固定为一个常数
     2 class Solution {
     3 public:
     4     void replaceSpace(char *str,int length) {
     5         int i,p,q;
     6         int oldCount,spaceCount;
     7         
     8         i=oldCount=spaceCount=0;
     9         
    10         while(str[i]!='')
    11         {
    12             oldCount++;
    13             if(str[i]==' ')
    14                 spaceCount++;
    15             i++;            
    16         }
    17         int newLength=oldCount+spaceCount*2;
    18                 
    19         p=oldCount;
    20         q=newLength;
    21                 
    22         while(p>=0)
    23         {
    24             if(str[p]==' ')
    25             {
    26                 str[q--]='0';
    27                 str[q--]='2';
    28                 str[q--]='%';                
    29             }
    30             else
    31                 str[q--]=str[p];
    32             
    33             p--;
    34         }
    35     }
    36 };
  • 相关阅读:
    75. Sort Colors
    101. Symmetric Tree
    121. Best Time to Buy and Sell Stock
    136. Single Number
    104. Maximum Depth of Binary Tree
    70. Climbing Stairs
    64. Minimum Path Sum
    62. Unique Paths
    css知识点3
    css知识点2
  • 原文地址:https://www.cnblogs.com/SeekHit/p/5755997.html
Copyright © 2011-2022 走看看