计蒜客 挑战难题 批量替换字符串

来源:互联网 发布:linux系统查看ip地址 编辑:程序博客网 时间:2024/06/12 23:12

在网络编程中,如果URL含有特殊字符,如空格、‘#’等,服务器将无法识别导致无法获得正确的参数值,我们需要将这些特殊字符转换成服务器可以识别的字符,例如将空格转换成’%20’。给定一个字符串,将其中的空格转换成’%20’。要求效率尽可能高,尽量在O(n)的复杂度完成,要求用char数组来存储字符,不能用string

输入:一个原始字符串,例如 hello world。

输出转换后的字符串,例如 hello%20world。

样例1

输入:

we are happy

输出:

we%20are%20happy

C语言:

#include <stdio.h>void switchString(char *str,int n){    //printf("%d",n);    int i,j=0;    char str0[100];    for(i=0;i<n;i++,j++)    {        if(str[i] == ' ')        {            str0[j++] = '%';            str0[j++] = '2';            str0[j] = '0';        }        else            str0[j] = str[i];    }    str0[j] = '\0';    printf("%s",str0);    return;}int main(){    char str[100];    gets(str);    switchString(str,strlen(str));    return 0;}

python:

#import stringstr = raw_input()str = str.replace(' ','%20')print str
0 0
原创粉丝点击