ARTS-WEEK11
停了一周... 继续继续
Algorithm
本周学习二分查找
二分查找常用场景就是针对已排序的数组进行搜索,下面是代码实现:
LeetCode 对应练习:
https://leetcode-cn.com/problems/sqrtx/
然而自己并没有理解二分查找的精髓啊,实现的方式实际并没有套用二分查找的模板来写,也仍旧忘记考虑溢出的可能... 代码如下:
按二分查找模板改写后:
但是测试发现,mid 打印虽然显示是6.0000000000,int转换之后却是5了,将小数点保留位数扩大后,再重新打印mid,发现值是5.99999999999454303
了解了下 python 浮点数转整数的四种操作运算 int、round、ceil、floor,其中 int 是向0取整,round是四舍五入,math.floor是向下取整,math.ceil向上取整
增加了如下判断后,提交通过...
当然看了官方题解,其实完全不用按浮点数来计算比较的,就是需要注意小于情况下需要保存当前的mid值,以便循环条件不满足时返回,代码如下:
Review
《Automate the Boring Stuff with Python Practical Programming for Total Beginners》
这个目前看了80页,前面都是基础语法部分,没啥整理分享,不过可以说是第一次看英语技术书籍,发现还不是很难,继续坚持下去。
同时还在看《Professional CMake》来学习CMake,这个后面会整理下笔记分享分享。
Tip
vscode 像SI一样类似的标记高亮
可以安装插件 highlight-words
vscode 想SI一样类似的书签功能
可以安装插件 bookmarks
Share
这真是暴露了额外学习和输出的太少太少了...
后面这块得想办法补起来
版权声明: 本文为 InfoQ 作者【一周思进】的原创文章。
原文链接:【http://xie.infoq.cn/article/0abed952cd25218f2287c8185】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论