鱼C论坛

 找回密码
 立即注册
查看: 3689|回复: 7

[技术交流] 动态规划 and map函数。

[复制链接]
发表于 2014-11-9 18:56:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 wei_Y 于 2014-11-9 19:02 编辑

一个比较有用的函数,map函数。准确的解释直接在shell里扣help(map),不过是英文。(我终于看懂英文的一部分了!)
360截图20141109180008553.jpg ,咳咳,翻译一下~(好有成就感)
他有两个参数,第一个参数是函数,也就是包括自写函数(lambda也算)和内置函数
第二个参数是迭代器,列表,元组,字典之类的。
注意的一点是第二个参数是个'*',所以可以上很多迭代器一块搞。
作用是将迭代器执行函数操作。
需要对一个列表进行操作的时候显得比较方便,当然也完全可以写for来实现。


需要注意的是自写的函数有多个参数的时候:
比如
  1. def abc(a,b):
  2.         return a,b
复制代码
进行的map操作传入很可能写的是map(abc,list1)尤其是当list1只有俩数的的时候- -。(我就犯了这错。。)

正确的写法是map(abc,list1,list2)
他进行的处理是根据函数进行的,也就是说他每次的执行是取list1和list2同样下标的数进行abc函数操作。至于返回就是abc这个函数的返回了。
另外,只有map的话是一个地址。
360截图20141109182122719.jpg

如果需要还要将他转换,或者迭代粗来。


如果那个函数只有一个参数但是需要处理的有很多怎么办呢?
把函数改成多个参数?还是一个个的处理了添加?
这些都不用,python还有另外一个函数替我们整理这些乱七八糟的参数。
360截图20141109182620829.jpg 内置的abs只能有一个参数。

直接传是不行了,我们可以通过zip将list1和list2包裹,处理方式也和map的处理一样。
不过,这样做虽然解决了多参数问题,新问题是zip返回的是个元组!所以不能执行'改变'的步骤。

所以我现在想到的办法是自写zip- -。大家折腾吧,我还木写粗来。。



动态规划


不确定是不是动态规划,看百度说的是动态规划。没理解,直接放问题。




输入数据:  一组数据列表输出数据: 各个数差异的最小的正整数
[10,10] = 0
[10] = 10
[5,8,13,14,27] = 3
[5,5,6,5] = 1
[12,30,30,32,42,49] = 9
[1,1,1,3] = 0
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] = 0




动起手来吧~~!有鱼币奖励哦~。

这里还有一个动态规划的。
http://bbs.fishc.com/forum.php?mod=viewthread&tid=54578&ctid=12
之前用随机做的也就木在意。如果不懂的可以看下那个答案。


我的思路:
从第一个数开始进行加减,加减后的数在和下一个进行加减。
最后返回绝对值最小的那一个。
那个不大会作图,图就不标了。



我的答案 :

游客,如果您要查看本帖隐藏内容请回复

Your answer :



评分

参与人数 2荣誉 +10 鱼币 +10 贡献 +5 收起 理由
小甲鱼 + 5 + 5 + 5 好赞~~~
bevin + 5 + 5

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-9 19:06:30 | 显示全部楼层
好赞~~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-11-9 19:09:49 | 显示全部楼层

再一次靠近小甲鱼老师。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-11-9 19:10:06 | 显示全部楼层
谢谢分享~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-11-9 20:41:30 | 显示全部楼层
wei_Y 发表于 2014-11-9 19:09
再一次靠近小甲鱼老师。。

为了方便统计,如果是原创的内容建议在标题最后加上【原创】字样哦~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-11-9 21:11:32 | 显示全部楼层
小甲鱼 发表于 2014-11-9 20:41
为了方便统计,如果是原创的内容建议在标题最后加上【原创】字样哦~

那个,小甲鱼老师,我不大喜欢加原创,我转的加个转吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-11-10 02:59:13 | 显示全部楼层
wei_Y 发表于 2014-11-9 21:11
那个,小甲鱼老师,我不大喜欢加原创,我转的加个转吧。

那也不用~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-11-10 07:50:08 | 显示全部楼层
不错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-28 11:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表