heapq中有两个元素nlargest() 和 nsmallest()可以实现以上功能。
如果 N 等于1时,使用min()和max()可以有更快的速度。
如果 N 的大小和集合大小接近的时候,通常先排序这个集合然后再使用切片操作会更快点 (sorted(items)[:N]或者是 sorted(items)[-N:])。
yield 的作用是把一个函数变成一个generator,带有 yield 的函数不再是一个普通函数,Python 解释器会将其视为一个 generator。
视觉SLAM第二讲作业, 查阅了很多资料, 理论推导不保证正确,代码是正确的。
PS: hexo 的公式支持太麻烦了,所以使用pdf的形式显示,这样修改原文还可以不用重新 hexo s,简直棒棒哒。
也可以访问这个:https://www.cao-lin.top/book/%E8%A7%86%E8%A7%89SLAM%E7%AC%AC%E4%BA%8C%E8%AE%B2%E4%BD%9C%E4%B8%9A.pdf
关于CPP的更多资料可以访问:nemoTyrant/manong/blob/master/category/C_C++.md
这里只是记录【C++11】30分钟了解C++11新特性 这篇文章的一些重要点和代码。
C++11包括大量的新特性:包括lambda表达式,类型推导关键字auto、decltype,和模板的大量改进。
主要是记一些理解之内的东西,没理解的东西,记下来也没用,这是一个初步的总结。
更加详细的信息参考cplusplus.com
1、题目:
找出数组中重复的数字
在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。
示例 1:
- 输入:
1 | [2, 3, 1, 0, 2, 5, 3] |
- 输出:
1 | 2 或 3 |
- 限制:
1 | 2 <= n <= 100000 |