查找各种python文档中的常用词
我有一个类似以下内容的csv文件:查找各种python文档中的常用词,python,algorithm,Python,Algorithm,我有一个类似以下内容的csv文件: book_store_id book_price name 1 200.0 foo 1 320.0 bar 2 220.0 foobar 2 280.0 foo 所以。。这是一个巨大的清单 现在我想知道如果输入是“foo” 既然书店id 1标有“foo”的最低价格,那么我想退回“bo
book_store_id book_price name
1 200.0 foo
1 320.0 bar
2 220.0 foobar
2 280.0 foo
所以。。这是一个巨大的清单
现在我想知道如果输入是“foo”
既然书店id 1标有“foo”的最低价格,那么我想退回“book\u store”1
现在我要做的是创建一个反向索引,它返回
foo:1,2
bar:1
foobar:2
等等,然后是一本单独的字典,在那里我维持着书店里书的价格。。但这是解决这个问题的最好办法吗
用python解决这个问题最有效的方法是什么?我将创建第三个数据结构(python dict、数据库表或其他) 数据结构键应该是名称(假设名称是唯一的) 此“名称”关键点的值应为最低价格 每次插入新书或更新书籍价格时,请在第三个数据结构中查找书籍最低价格,如果低于最低价格,请设置新的最低价格 别忘了,如果你删除了一本书,或是提高了它的价格,一定要更新最低限度。 (您可以添加另一列,使每本书都有一个布尔值“is current minimum”。然后在涨价时,如果这是真的,您只需要更新最小值 问题是,当删除旧的最小值时,需要找到下一个最佳最小值 在这里有一个heapq是很好的 python有一个很好的heapq实现这里: 否则,每次价格上涨时,您必须循环遍历所有值以找到新的最小值,或者您必须每次存储5个最佳价格,例如
玩得开心:)这一切都取决于您处理的数据量。如果金额不太高,那么您所做的一切都很好。如何提高效率?运行时间?编码时间?空间消耗?我认为倒排索引和IR技术在这方面有些过分,因为您的数据是结构化的,我同意@StefanoBorini的观点:使用SQL或其他基于关系的系统,可能是最好的解决方案。运行时…也就是说,完全用大的注释为什么-1分??这个问题怎么了?我不知道。我只想写一个适当的select语句。如果工作需要它,只需使用sql即可。如果你需要它做家庭作业,你应该从你的课程材料中知道。大的查找哦?没有比索引更好的了……)