fix and add · code-talking/AlgorithmsByPython@444eff2 · GitHub
Skip to content

Commit 444eff2

Browse files
fix and add
修改部分代码,添加树的宽度计算
1 parent c23d106 commit 444eff2

4 files changed

Lines changed: 146 additions & 60 deletions

File tree

.idea/workspace.xml

Lines changed: 51 additions & 49 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Target Offer/判断平衡二叉树.py

Lines changed: 31 additions & 1 deletion

Target Offer/数字在排序数组中出现的次数.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@ def GetNumberOfK(self, data, k):
1010
length = len(data)
1111
first = self.GetFirstK(data, length, k, 0, length-1)
1212
last = self.GetLastK(data, length, k, 0, length-1)
13-
print(first, last)
14-
if first > -1 and last > -1:
13+
if first > -1:
1514
number = last - first + 1
1615
return number
1716

@@ -23,11 +22,11 @@ def GetFirstK(self, data, length, k, start, end):
2322
middleData = data[middleIndex]
2423

2524
if middleData == k:
26-
if middleIndex > 0 and data[middleIndex-1] != k or middleIndex == 0:
27-
return middleIndex
28-
else:
25+
if middleIndex > 0 and data[middleIndex-1] == k:
2926
end = middleIndex - 1
30-
elif data[middleIndex] > k:
27+
else:
28+
return middleIndex
29+
elif middleData > k:
3130
end = middleIndex - 1
3231
else:
3332
start = middleIndex + 1
@@ -41,11 +40,11 @@ def GetLastK(self, data, length, k, start, end):
4140
middleData = data[middleIndex]
4241

4342
if middleData == k:
44-
if middleIndex < length - 1 and data[middleIndex+1] != k or middleIndex == length - 1:
45-
return middleIndex
46-
else:
43+
if middleIndex < end and data[middleIndex+1] == k:
4744
start = middleIndex + 1
48-
elif data[middleIndex] > k:
45+
else:
46+
return middleIndex
47+
elif middleData > k:
4948
end = middleIndex - 1
5049
else:
5150
start = middleIndex + 1

Target Offer/树的宽度.py

Lines changed: 55 additions & 0 deletions

0 commit comments

Comments
 (0)