Skip to content

Commit bcced3e

Browse files
authored
feat: add ts solution to lc problem: No.0735 (doocs#1256)
1 parent 0437209 commit bcced3e

File tree

3 files changed

+76
-0
lines changed

3 files changed

+76
-0
lines changed

solution/0700-0799/0735.Asteroid Collision/README.md

+27
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,33 @@ func asteroidCollision(asteroids []int) []int {
210210
}
211211
```
212212

213+
### TypeScript
214+
215+
```ts
216+
function asteroidCollision(asteroids: number[]): number[] {
217+
const ans: number[] = [];
218+
for (const a of asteroids) {
219+
if (a > 0) {
220+
ans.push(a);
221+
} else {
222+
while (
223+
ans.length &&
224+
0 < ans[ans.length - 1] &&
225+
ans[ans.length - 1] < -a
226+
) {
227+
ans.pop();
228+
}
229+
if (ans.length && ans[ans.length - 1] === -a) {
230+
ans.pop();
231+
} else if (!ans.length || ans[ans.length - 1] < -a) {
232+
ans.push(a);
233+
}
234+
}
235+
}
236+
return ans;
237+
}
238+
```
239+
213240
### **...**
214241

215242
```

solution/0700-0799/0735.Asteroid Collision/README_EN.md

+27
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,33 @@ func asteroidCollision(asteroids []int) []int {
201201
}
202202
```
203203

204+
### TypeScript
205+
206+
```ts
207+
function asteroidCollision(asteroids: number[]): number[] {
208+
const ans: number[] = [];
209+
for (const a of asteroids) {
210+
if (a > 0) {
211+
ans.push(a);
212+
} else {
213+
while (
214+
ans.length &&
215+
0 < ans[ans.length - 1] &&
216+
ans[ans.length - 1] < -a
217+
) {
218+
ans.pop();
219+
}
220+
if (ans.length && ans[ans.length - 1] === -a) {
221+
ans.pop();
222+
} else if (!ans.length || ans[ans.length - 1] < -a) {
223+
ans.push(a);
224+
}
225+
}
226+
}
227+
return ans;
228+
}
229+
```
230+
204231
### **...**
205232

206233
```
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
function asteroidCollision(asteroids: number[]): number[] {
2+
const ans: number[] = [];
3+
for (const a of asteroids) {
4+
if (a > 0) {
5+
ans.push(a);
6+
} else {
7+
while (
8+
ans.length &&
9+
0 < ans[ans.length - 1] &&
10+
ans[ans.length - 1] < -a
11+
) {
12+
ans.pop();
13+
}
14+
if (ans.length && ans[ans.length - 1] === -a) {
15+
ans.pop();
16+
} else if (!ans.length || ans[ans.length - 1] < -a) {
17+
ans.push(a);
18+
}
19+
}
20+
}
21+
return ans;
22+
}

0 commit comments

Comments
 (0)