![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
用python实现数据结构和算法
菜鸟12134
小小菜鸟,很少烦恼,眼望四周野火飘。
展开
-
python实现数据顺序查找、二分查找,并进行算法分析
顺序查找Sequential Search无序表查找如果数据项保存在如列表这样的集合中,我们会称这些数据项具有线性或者顺序关系。在Python List中,这些数据项的存储位置称为下标( index) ,这些下标都是有序的整数。通过下标,我们就可以按照顺序来访问和查找数据项,这种技术称为“顺序查找”要确定列表中是否存在需要查找的数据项首先从列表的第1个数据项开始,按照下标增长的顺序,逐个比对数据项,如果到最后一个都未发现要查找的项,那么查找失败。代码很简单:def sequential原创 2020-07-02 00:15:33 · 857 阅读 · 0 评论 -
有趣的动态规划实例——博物馆大盗问题
问题描述大盗潜入博物馆,面前有5件宝物,分别有重量和价值,大盜的背包仅能负重20公斤,请问如何选择宝物,总价值最高?物品重量价值1232343484585910动态规划解法明确问题以后,我们需要建立动态规划表格m[(i, w)]:其中 iii 是装物品的数量 ( 0≤i≤50\le i\le 50≤i≤5 ),www 是物品的载重 ( 0≤w≤200\le w\le 200≤w≤20 )mmm 则是这些物品的总价值, 也原创 2020-06-21 11:27:33 · 727 阅读 · 0 评论 -
找零兑换问题:递归解法
引言用递归解决找零兑换问题,首先先要明确递归三定律1.最小规模问题(基本结束条件)2.减小问题规模(向结束条件演进)3.解决减小了规模的相同问题(调用自身)应用到实际找零兑换的问题上,首先明确最小规模问题:需要兑换的找零,其面值正好等于某种硬币。如我们需要找零25分,刚好有25分面值的硬币,这里就只需要1个硬币就可完成找零。其次是减小问题的规模:对每种硬币的面值分别尝试。如美元硬币...原创 2020-05-08 13:19:05 · 1963 阅读 · 2 评论