【发布时间】:2020-04-09 15:39:49
【问题描述】:
我对我正在处理的给定流的一个难题感到困惑,我正在处理更好的线性时间O(n)..
按排序顺序在无限的单词列表中搜索与作为输入的单词对应的索引
给定一个无限列表["apple", "banana", "cat", "dog", ...]
我们有一个班级A 其中A.get(2) # => "cat"
编写一个函数来返回作为函数输入的单词的索引,如下所示:
A.get_index("cat") # => 2
你可以使用 A.get() 而不是 python 的 .index() 序列
【问题讨论】:
-
按排序顺序搜索无限的单词列表。那么while循环?
-
我假设你不想从 A.get_index() 中复制?
-
在这里使用
for循环和enumerate就足够了。 -
你可以使用二分搜索
-
你能在 O(N) 中展示你的尝试吗?
标签: python list algorithm stream