利用 %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 替换 空格的主要内容,如果未能解决你的问题,请参考以下文章