利用 %20 替换 空格

Posted Young_For_You

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用 %20 替换 空格相关的知识,希望对你有一定的参考价值。

将字符串中的空格都替换为 %20 ( 时间复杂度为O(N)的解法 )

void ReplaceBlankSpace(char* arr)
    {
        if (arr)
        {
            int count = 0;
            int lenth = strlen(arr);
            for (int i = 0; i < lenth;++i)
            if (arr[i] == \' \')
                count++;
            char*before = arr+lenth, *behind = arr+lenth+2*count;
            while (before != behind)
            {
                if (*before != \' \')
                {
                    *behind-- = *before--;
                }                
                else
                {
                    *behind-- = \'0\';
                    *behind-- = \'2\';
                    *behind-- = \'%\';
                    before--;
                }
            }
        }
    }
替换空格

 

合并有序数组( 时间复杂为O(N),空间复杂度为O(1)的解法)

void ArrayMerage(vector<int>& Vector1, vector<int>& Vector2)
    {
        int index_1_before = Vector1.size() - 1, index_2 = Vector2.size() - 1;
        int sum = Vector1.size() + Vector2.size();
        int index_1_behind = sum - 1;
        Vector1.resize(sum);
        while (index_2 >= 0 && index_1_before >= 0)

            Vector1[index_1_behind--] = Vector1[index_1_before] > Vector2[index_2] ? \\
            Vector1[index_1_before--] : Vector2[index_2--];
        while (index_2 >= 0)
            Vector1[index_1_behind--] = Vector2[index_2--];
    }
合并数组

 

以上是关于利用 %20 替换 空格的主要内容,如果未能解决你的问题,请参考以下文章

替换空格

编程题替换空格

替换空格

剑指offer 2.替换空格

替换空格

替换空格