Principle of Computing(2)

本博客记录了学习Python语法、基础功能、语言习惯纠正、写注释的快乐,以及通过组合调试和求和高级函数的学习过程。强调了设密码时的限制与排列组合之间的矛盾性,并介绍了Python内置函数的强大。计划继续深入学习算法、GUI设计和Android+云程序设计。

留了两节简单的课一起来写。

首先是combination+debug。后者没什么好说的……就是一个单纯对拍程序。前者,说一个老师提到的有意思的问题吧。在设密码的时候,我们往往对字母数字甚至大小写有要求,说是提高安全性。可是从排列组合的角度来说,越多的限制就意味着越小的基本空间(所有排列可能),暴力破解需要的时间可能就越短,是不是矛盾了呢?答案是,设密码用的有意义的字母和数字容易破解,所以那些要求是来打乱有意义的。(反正我是记密码无能:)

第二节课是sum+higer-order-functions。求和公式,高中必备。不过sum(1/i)=log(n)+small const [i from 1 to n] 第一次见。 higher-order-function就是把另一个function作为自己的参数,和c++里调用方法基本一致,只是被调用function可以在一个主程序里同时是function-a,function-b,function-c........,取决于每次填的调用名。没想到c++有无对应的功能。这节课的mini-project是找最佳策略类型的,我用的思路是回报/付出的回报率考虑(因为比较简单= =),其实可以应用到简单的股市回报率,不过还要simulate之前数据估计回报。

以及,发现python built-in的东西特别多,比如 math.ceil, sorted, float('-inf'). 

基本这个课就此告一段落了,学的东西有点太简单所以这门课拿完证书就不继续学下去specialization了。还算是达到了原定目标:熟悉了python的语法,某些基础功能,语言习惯被纠正的很彻底,写comment写的很开心,读instruction读的越来越快……

-----------------------------------------------------------------接下来计划的分界线-------------------------------------------------------------------------

要把algorithm完完整整地跟完,然后两个specialization跟完(GUI设计和android+cloud程序设计),大概都要耗时半年左右。期间会一直来写学习笔记的。2015的下半年,加油~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值