查找出现次数的流程图(二分查找)
Posted
技术标签:
【中文标题】查找出现次数的流程图(二分查找)【英文标题】:Flowchart to find the number of occurrences (binary search) 【发布时间】:2021-11-18 02:12:24 【问题描述】:我从来没有创建过有点复杂的流程图,所以我现在有点困惑。
这是我写的代码:
def binary_occurences(arr, target):
start = 0
end = len(arr)-1
placement = -1
occurence = 0
while start <= end:
center = (start + end)//2
if target == arr[center]:
placement = center
end = center - 1
elif target < arr[center]:
end = center - 1
else:
start = center + 1
if placement == -1:
return 'your target element is not in the list'
else:
while (placement < len(arr) and arr[placement] == target):
placement += 1
occurence += 1
print(f"Element target occurs occurence times")
根据这段代码,我做了一个流程图
flowchart
但这似乎有点乱,所以我不确定我是否正确,尤其是在 while 循环下。
谁能给我一个建议?提前致谢。
【问题讨论】:
请编辑问题以将其限制为具有足够详细信息的特定问题,以确定适当的答案。 【参考方案1】:还不错。但是有几点建议:
如果您必须做两件(或更多)事情,然后再回到其他事情(如循环),您不必让每个元素都回去。只有最后一个。 如果多件事要回到一个(如if..elif..else
语句的多个结果)回到循环条件,请尝试对齐它们。如果他们的箭头重叠也没关系。
这就是我所说的:my version of your flowchart。我有点忽略了字体、大小和对齐方式,但我认为您可能有软件可以解决这些问题。
【讨论】:
以上是关于查找出现次数的流程图(二分查找)的主要内容,如果未能解决你的问题,请参考以下文章