Skip to content

Commit bb1095e

Browse files
committed
feat: add solutions to lc problem: No.1053
1 parent de1673a commit bb1095e

File tree

3 files changed

+58
-0
lines changed

3 files changed

+58
-0
lines changed

solution/1000-1099/1053.Previous Permutation With One Swap/README.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,27 @@ func prevPermOpt1(arr []int) []int {
142142
}
143143
```
144144

145+
### **TypeScript**
146+
147+
```ts
148+
function prevPermOpt1(arr: number[]): number[] {
149+
const n = arr.length;
150+
for (let i = n - 1; i > 0; --i) {
151+
if (arr[i - 1] > arr[i]) {
152+
for (let j = n - 1; j > i - 1; --j) {
153+
if (arr[j] < arr[i - 1] && arr[j] !== arr[j - 1]) {
154+
const t = arr[i - 1];
155+
arr[i - 1] = arr[j];
156+
arr[j] = t;
157+
return arr;
158+
}
159+
}
160+
}
161+
}
162+
return arr;
163+
}
164+
```
165+
145166
### **...**
146167

147168
```

solution/1000-1099/1053.Previous Permutation With One Swap/README_EN.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,27 @@ func prevPermOpt1(arr []int) []int {
124124
}
125125
```
126126

127+
### **TypeScript**
128+
129+
```ts
130+
function prevPermOpt1(arr: number[]): number[] {
131+
const n = arr.length;
132+
for (let i = n - 1; i > 0; --i) {
133+
if (arr[i - 1] > arr[i]) {
134+
for (let j = n - 1; j > i - 1; --j) {
135+
if (arr[j] < arr[i - 1] && arr[j] !== arr[j - 1]) {
136+
const t = arr[i - 1];
137+
arr[i - 1] = arr[j];
138+
arr[j] = t;
139+
return arr;
140+
}
141+
}
142+
}
143+
}
144+
return arr;
145+
}
146+
```
147+
127148
### **...**
128149

129150
```
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
function prevPermOpt1(arr: number[]): number[] {
2+
const n = arr.length;
3+
for (let i = n - 1; i > 0; --i) {
4+
if (arr[i - 1] > arr[i]) {
5+
for (let j = n - 1; j > i - 1; --j) {
6+
if (arr[j] < arr[i - 1] && arr[j] !== arr[j - 1]) {
7+
const t = arr[i - 1];
8+
arr[i - 1] = arr[j];
9+
arr[j] = t;
10+
return arr;
11+
}
12+
}
13+
}
14+
}
15+
return arr;
16+
}

0 commit comments

Comments
 (0)