File tree 1 file changed +33
-0
lines changed
1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change @@ -58,6 +58,8 @@ class Solution {
58
58
59
59
### ** JavaScript**
60
60
61
+ - 使用字符串内置方法
62
+
61
63
``` js
62
64
/**
63
65
* @param {string} s
@@ -67,6 +69,37 @@ var replaceSpace = function (s) {
67
69
return s .split (" " ).join (" %20" );
68
70
};
69
71
```
72
+ - 使用两个指针
73
+
74
+ ``` js
75
+ /**
76
+ * @param {string}
77
+ * @return {string}
78
+ */
79
+ var replaceSpace = function (s ) {
80
+ s = s .split (" " );
81
+ let emptyNum = 0 ;
82
+ for (let i = 0 ; i < s .length ; i++ ) {
83
+ if (s[i] === " " ) {
84
+ emptyNum++ ;
85
+ }
86
+ }
87
+ let p1 = s .length - 1 ;
88
+ let p2 = p1 + 2 * emptyNum;
89
+ while (p1 >= 0 && p2 > p1) {
90
+ if (s[p1] === " " ) {
91
+ s[p2] = " 0" ;
92
+ s[-- p2] = " 2" ;
93
+ s[-- p2] = " %" ;
94
+ } else {
95
+ s[p2] = s[p1];
96
+ }
97
+ p1-- ;
98
+ p2-- ;
99
+ }
100
+ return s .join (" " );
101
+ };
102
+ ```
70
103
71
104
### ** Go**
72
105
You can’t perform that action at this time.
0 commit comments