Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit bfcac26

Browse files
feat: add swift implementation to lcci problem: No.08.09 (doocs#2695)
1 parent 89dd182 commit bfcac26

File tree

3 files changed

+72
-0
lines changed

3 files changed

+72
-0
lines changed

‎lcci/08.09.Bracket/README.md‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,31 @@ var generateParenthesis = function (n) {
190190
};
191191
```
192192

193+
```swift
194+
class Solution {
195+
private var ans: [String] = []
196+
private var n: Int = 0
197+
198+
func generateParenthesis(_ n: Int) -> [String] {
199+
self.n = n
200+
dfs(l: 0, r: 0, t: "")
201+
return ans
202+
}
203+
204+
private func dfs(l: Int, r: Int, t: String) {
205+
if l > n || r > n || l < r {
206+
return
207+
}
208+
if l == n && r == n {
209+
ans.append(t)
210+
return
211+
}
212+
dfs(l: l + 1, r: r, t: t + "(")
213+
dfs(l: l, r: r + 1, t: t + ")")
214+
}
215+
}
216+
```
217+
193218
<!-- tabs:end -->
194219

195220
<!-- end -->

‎lcci/08.09.Bracket/README_EN.md‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,31 @@ var generateParenthesis = function (n) {
197197
};
198198
```
199199

200+
```swift
201+
class Solution {
202+
private var ans: [String] = []
203+
private var n: Int = 0
204+
205+
func generateParenthesis(_ n: Int) -> [String] {
206+
self.n = n
207+
dfs(l: 0, r: 0, t: "")
208+
return ans
209+
}
210+
211+
private func dfs(l: Int, r: Int, t: String) {
212+
if l > n || r > n || l < r {
213+
return
214+
}
215+
if l == n && r == n {
216+
ans.append(t)
217+
return
218+
}
219+
dfs(l: l + 1, r: r, t: t + "(")
220+
dfs(l: l, r: r + 1, t: t + ")")
221+
}
222+
}
223+
```
224+
200225
<!-- tabs:end -->
201226

202227
<!-- end -->

‎lcci/08.09.Bracket/Solution.swift‎

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
class Solution {
2+
private var ans: [String] = []
3+
private var n: Int = 0
4+
5+
func generateParenthesis(_ n: Int) -> [String] {
6+
self.n = n
7+
dfs(l: 0, r: 0, t: "")
8+
return ans
9+
}
10+
11+
private func dfs(l: Int, r: Int, t: String) {
12+
if l > n || r > n || l < r {
13+
return
14+
}
15+
if l == n && r == n {
16+
ans.append(t)
17+
return
18+
}
19+
dfs(l: l + 1, r: r, t: t + "(")
20+
dfs(l: l, r: r + 1, t: t + ")")
21+
}
22+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /