Skip to content

Commit 118a810

Browse files
authored
style: format code and documents (doocs#1317)
1 parent 5a7cd18 commit 118a810

File tree

65 files changed

+1149
-1027
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+1149
-1027
lines changed

basic/sorting/CountingSort/CountingSort.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,4 +51,4 @@ func main() {
5151
nums = []int{3, 7, 9, 5, 5, 8, 11}
5252
CountingSort(nums, 3, 11)
5353
fmt.Println(nums)
54-
}
54+
}

lcci/08.11.Coin/Solution.go

+11-11
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
func waysToChange(n int) int {
2-
const mod int = 1e9 + 7
3-
coins := []int{25, 10, 5, 1}
4-
f := make([]int, n+1)
5-
f[0] = 1
6-
for _, c := range coins {
7-
for j := c; j <= n; j++ {
8-
f[j] = (f[j] + f[j-c]) % mod
9-
}
10-
}
11-
return f[n]
1+
func waysToChange(n int) int {
2+
const mod int = 1e9 + 7
3+
coins := []int{25, 10, 5, 1}
4+
f := make([]int, n+1)
5+
f[0] = 1
6+
for _, c := range coins {
7+
for j := c; j <= n; j++ {
8+
f[j] = (f[j] + f[j-c]) % mod
9+
}
10+
}
11+
return f[n]
1212
}
+5-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
func wiggleSort(nums []int) {
2-
sort.Ints(nums)
3-
for i := 0; i < len(nums)-1; i += 2 {
4-
nums[i], nums[i+1] = nums[i+1], nums[i]
5-
}
1+
func wiggleSort(nums []int) {
2+
sort.Ints(nums)
3+
for i := 0; i < len(nums)-1; i += 2 {
4+
nums[i], nums[i+1] = nums[i+1], nums[i]
5+
}
66
}
+29-29
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,30 @@
1-
func shortestSeq(big []int, small []int) []int {
2-
cnt := len(small)
3-
need := map[int]int{}
4-
window := map[int]int{}
5-
for _, x := range small {
6-
need[x] = 1
7-
}
8-
j, k, mi := 0, -1, 1<<30
9-
for i, x := range big {
10-
window[x]++
11-
if need[x] >= window[x] {
12-
cnt--
13-
}
14-
for cnt == 0 {
15-
if t := i - j + 1; t < mi {
16-
mi = t
17-
k = j
18-
}
19-
if need[big[j]] >= window[big[j]] {
20-
cnt++
21-
}
22-
window[big[j]]--
23-
j++
24-
}
25-
}
26-
if k < 0 {
27-
return []int{}
28-
}
29-
return []int{k, k + mi - 1}
1+
func shortestSeq(big []int, small []int) []int {
2+
cnt := len(small)
3+
need := map[int]int{}
4+
window := map[int]int{}
5+
for _, x := range small {
6+
need[x] = 1
7+
}
8+
j, k, mi := 0, -1, 1<<30
9+
for i, x := range big {
10+
window[x]++
11+
if need[x] >= window[x] {
12+
cnt--
13+
}
14+
for cnt == 0 {
15+
if t := i - j + 1; t < mi {
16+
mi = t
17+
k = j
18+
}
19+
if need[big[j]] >= window[big[j]] {
20+
cnt++
21+
}
22+
window[big[j]]--
23+
j++
24+
}
25+
}
26+
if k < 0 {
27+
return []int{}
28+
}
29+
return []int{k, k + mi - 1}
3030
}

lcof2/剑指 Offer II 012. 左右两边子数组的和相等/Solution.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,4 @@ function pivotIndex($nums) {
1717
}
1818
return -1;
1919
}
20-
}
20+
}

lcp/LCP 06. 拿硬币/Solution.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ function minCount($coins) {
1010
}
1111
return $cnt;
1212
}
13-
}
13+
}
+62-62
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,63 @@
1-
func flipChess(chessboard []string) (ans int) {
2-
m, n := len(chessboard), len(chessboard[0])
3-
bfs := func(i, j int) int {
4-
q := [][2]int{{i, j}}
5-
g := make([][]byte, m)
6-
for i := range g {
7-
g[i] = make([]byte, n)
8-
copy(g[i], []byte(chessboard[i]))
9-
}
10-
g[i][j] = 'X'
11-
cnt := 0
12-
for len(q) > 0 {
13-
p := q[0]
14-
q = q[1:]
15-
i, j = p[0], p[1]
16-
for a := -1; a <= 1; a++ {
17-
for b := -1; b <= 1; b++ {
18-
if a == 0 && b == 0 {
19-
continue
20-
}
21-
x, y := i+a, j+b
22-
for x >= 0 && x < m && y >= 0 && y < n && g[x][y] == 'O' {
23-
x, y = x+a, y+b
24-
}
25-
if x >= 0 && x < m && y >= 0 && y < n && g[x][y] == 'X' {
26-
x -= a
27-
y -= b
28-
cnt += max(abs(x-i), abs(y-j))
29-
for x != i || y != j {
30-
g[x][y] = 'X'
31-
q = append(q, [2]int{x, y})
32-
x -= a
33-
y -= b
34-
}
35-
}
36-
}
37-
}
38-
}
39-
return cnt
40-
}
41-
for i, row := range chessboard {
42-
for j, c := range row {
43-
if c == '.' {
44-
ans = max(ans, bfs(i, j))
45-
}
46-
}
47-
}
48-
return
49-
}
50-
51-
func abs(x int) int {
52-
if x < 0 {
53-
return -x
54-
}
55-
return x
56-
}
57-
58-
func max(a, b int) int {
59-
if a > b {
60-
return a
61-
}
62-
return b
1+
func flipChess(chessboard []string) (ans int) {
2+
m, n := len(chessboard), len(chessboard[0])
3+
bfs := func(i, j int) int {
4+
q := [][2]int{{i, j}}
5+
g := make([][]byte, m)
6+
for i := range g {
7+
g[i] = make([]byte, n)
8+
copy(g[i], []byte(chessboard[i]))
9+
}
10+
g[i][j] = 'X'
11+
cnt := 0
12+
for len(q) > 0 {
13+
p := q[0]
14+
q = q[1:]
15+
i, j = p[0], p[1]
16+
for a := -1; a <= 1; a++ {
17+
for b := -1; b <= 1; b++ {
18+
if a == 0 && b == 0 {
19+
continue
20+
}
21+
x, y := i+a, j+b
22+
for x >= 0 && x < m && y >= 0 && y < n && g[x][y] == 'O' {
23+
x, y = x+a, y+b
24+
}
25+
if x >= 0 && x < m && y >= 0 && y < n && g[x][y] == 'X' {
26+
x -= a
27+
y -= b
28+
cnt += max(abs(x-i), abs(y-j))
29+
for x != i || y != j {
30+
g[x][y] = 'X'
31+
q = append(q, [2]int{x, y})
32+
x -= a
33+
y -= b
34+
}
35+
}
36+
}
37+
}
38+
}
39+
return cnt
40+
}
41+
for i, row := range chessboard {
42+
for j, c := range row {
43+
if c == '.' {
44+
ans = max(ans, bfs(i, j))
45+
}
46+
}
47+
}
48+
return
49+
}
50+
51+
func abs(x int) int {
52+
if x < 0 {
53+
return -x
54+
}
55+
return x
56+
}
57+
58+
func max(a, b int) int {
59+
if a > b {
60+
return a
61+
}
62+
return b
6363
}

lcp/LCP 55. 采集果实/Solution.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
func getMinimumTime(time []int, fruits [][]int, limit int) (ans int) {
2-
for _, f := range fruits {
3-
i, num := f[0], f[1]
4-
ans += (num + limit - 1) / limit * time[i]
5-
}
6-
return
1+
func getMinimumTime(time []int, fruits [][]int, limit int) (ans int) {
2+
for _, f := range fruits {
3+
i, num := f[0], f[1]
4+
ans += (num + limit - 1) / limit * time[i]
5+
}
6+
return
77
}

lcp/LCP 56. 信物传送/Solution.go

+41-41
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,42 @@
1-
func conveyorBelt(matrix []string, start []int, end []int) int {
2-
dirs := [5]int{-1, 0, 1, 0, -1}
3-
d := map[byte]int{
4-
'^': 0,
5-
'>': 1,
6-
'v': 2,
7-
'<': 3,
8-
}
9-
q := [][2]int{[2]int{start[0], start[1]}}
10-
m, n := len(matrix), len(matrix[0])
11-
dist := make([][]int, m)
12-
for i := range dist {
13-
dist[i] = make([]int, n)
14-
for j := range dist[i] {
15-
dist[i][j] = 1 << 30
16-
}
17-
}
18-
dist[start[0]][start[1]] = 0
19-
for {
20-
p := q[0]
21-
i, j := p[0], p[1]
22-
if i == end[0] && j == end[1] {
23-
return dist[i][j]
24-
}
25-
q = q[1:]
26-
for k := 0; k < 4; k++ {
27-
x, y := i+dirs[k], j+dirs[k+1]
28-
t := dist[i][j]
29-
if k != d[matrix[i][j]] {
30-
t++
31-
}
32-
if x >= 0 && x < m && y >= 0 && y < n && t < dist[x][y] {
33-
dist[x][y] = t
34-
if dist[x][y] == dist[i][j] {
35-
q = append([][2]int{[2]int{x, y}}, q...)
36-
} else {
37-
q = append(q, [2]int{x, y})
38-
}
39-
}
40-
}
41-
}
1+
func conveyorBelt(matrix []string, start []int, end []int) int {
2+
dirs := [5]int{-1, 0, 1, 0, -1}
3+
d := map[byte]int{
4+
'^': 0,
5+
'>': 1,
6+
'v': 2,
7+
'<': 3,
8+
}
9+
q := [][2]int{[2]int{start[0], start[1]}}
10+
m, n := len(matrix), len(matrix[0])
11+
dist := make([][]int, m)
12+
for i := range dist {
13+
dist[i] = make([]int, n)
14+
for j := range dist[i] {
15+
dist[i][j] = 1 << 30
16+
}
17+
}
18+
dist[start[0]][start[1]] = 0
19+
for {
20+
p := q[0]
21+
i, j := p[0], p[1]
22+
if i == end[0] && j == end[1] {
23+
return dist[i][j]
24+
}
25+
q = q[1:]
26+
for k := 0; k < 4; k++ {
27+
x, y := i+dirs[k], j+dirs[k+1]
28+
t := dist[i][j]
29+
if k != d[matrix[i][j]] {
30+
t++
31+
}
32+
if x >= 0 && x < m && y >= 0 && y < n && t < dist[x][y] {
33+
dist[x][y] = t
34+
if dist[x][y] == dist[i][j] {
35+
q = append([][2]int{[2]int{x, y}}, q...)
36+
} else {
37+
q = append(q, [2]int{x, y})
38+
}
39+
}
40+
}
41+
}
4242
}

lcp/LCP 77. 符文储备/Solution.go

+11-11
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
func runeReserve(runes []int) (ans int) {
2-
sort.Ints(runes)
3-
i := 0
4-
for j, x := range runes {
5-
if j > 0 && x-runes[j-1] > 1 {
6-
i = j
7-
} else if t := j - i + 1; ans < t {
8-
ans = t
9-
}
10-
}
11-
return
1+
func runeReserve(runes []int) (ans int) {
2+
sort.Ints(runes)
3+
i := 0
4+
for j, x := range runes {
5+
if j > 0 && x-runes[j-1] > 1 {
6+
i = j
7+
} else if t := j - i + 1; ans < t {
8+
ans = t
9+
}
10+
}
11+
return
1212
}

0 commit comments

Comments
 (0)