File tree 3 files changed +76
-0
lines changed
lcof/面试题21. 调整数组顺序使奇数位于偶数前面
3 files changed +76
-0
lines changed Original file line number Diff line number Diff line change @@ -114,6 +114,49 @@ public:
114
114
};
115
115
```
116
116
117
+ ### **TypeScript**
118
+
119
+ ```ts
120
+ function exchange(nums: number[]): number[] {
121
+ let l = 0;
122
+ let r = nums.length - 1;
123
+ while (l < r) {
124
+ if (nums[l] % 2 === 0) {
125
+ [nums[l], nums[r]] = [nums[r], nums[l]];
126
+ r--;
127
+ } else {
128
+ l++;
129
+ }
130
+ }
131
+ return nums;
132
+ }
133
+ ```
134
+
135
+ ### ** Rust**
136
+
137
+ ``` rust
138
+ impl Solution {
139
+ pub fn exchange (mut nums : Vec <i32 >) -> Vec <i32 > {
140
+ if nums . len () == 0 {
141
+ return nums ;
142
+ }
143
+ let mut l = 0 ;
144
+ let mut r = nums . len () - 1 ;
145
+ while l < r {
146
+ let num = nums [l ];
147
+ if num % 2 == 0 {
148
+ nums [l ] = nums [r ];
149
+ nums [r ] = num ;
150
+ r -= 1 ;
151
+ } else {
152
+ l += 1 ;
153
+ }
154
+ }
155
+ nums
156
+ }
157
+ }
158
+ ```
159
+
117
160
### ** ...**
118
161
119
162
```
Original file line number Diff line number Diff line change
1
+ impl Solution {
2
+ pub fn exchange ( mut nums : Vec < i32 > ) -> Vec < i32 > {
3
+ if nums. len ( ) == 0 {
4
+ return nums;
5
+ }
6
+ let mut l = 0 ;
7
+ let mut r = nums. len ( ) - 1 ;
8
+ while l < r {
9
+ let num = nums[ l] ;
10
+ if num % 2 == 0 {
11
+ nums[ l] = nums[ r] ;
12
+ nums[ r] = num;
13
+ r -= 1 ;
14
+ } else {
15
+ l += 1 ;
16
+ }
17
+ }
18
+ nums
19
+ }
20
+ }
Original file line number Diff line number Diff line change
1
+ function exchange ( nums : number [ ] ) : number [ ] {
2
+ let l = 0 ;
3
+ let r = nums . length - 1 ;
4
+ while ( l < r ) {
5
+ if ( nums [ l ] % 2 === 0 ) {
6
+ [ nums [ l ] , nums [ r ] ] = [ nums [ r ] , nums [ l ] ] ;
7
+ r -- ;
8
+ } else {
9
+ l ++ ;
10
+ }
11
+ }
12
+ return nums ;
13
+ }
You can’t perform that action at this time.
0 commit comments