空格替换_O(n)方法
生活随笔
收集整理的這篇文章主要介紹了
空格替换_O(n)方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.需求及分析
實現一個函數,把字符串中的每個空格替換成“%20”。例如輸入“we are happy”,則輸出“we%20are%20happy”。
在網絡編程中,如果URL參數中含有特殊字符,如空格、‘#’等,可能導致服務器端無法獲得正確的參數值。此時需要考慮將特殊符號轉換為服務器可以識別的字符。轉換的規則是在‘%’后面跟上ASCII碼的兩位16進制的表示。比如空格的ASCII碼是32,即十六進制的0x20,因此空格就換被替換成‘%20’。
2.O(n)的解決方案
- 遍歷字符串,統計字符串的長度,空格的數量;
- 初始化替換后字符串的長度(=原始字符串長度+空格的數量*2);
- 初始化兩個指針,指針p1指向原始字符串末端;指針p2指向新字符串末端;
- 終止條件:p1 p2同時指向字符串首地址。
總結
以上是生活随笔為你收集整理的空格替换_O(n)方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Visual Studio 调试器---
- 下一篇: 树与搜索