摘要:001. 两数之和 2022年7月12日 【分析】最简单的想法就是两层遍历,时间复杂度为
O(n2)。为了提高效率因此不能进行两层遍历,第一层的遍历是必须的,针对每一个元素,考虑 target-nums[i] 是否在数组里面。因为最终的结果需要索引值,因此考虑到将 nums 的元素作为 key
阅读全文
摘要:参考:二叉树的创建及遍历(Python版) 几种遍历方式解读,所谓顺序就是根节点出现的位置! 先序遍历:中左右 中序遍历:左中右 后序遍历:左右中 代码如下: class BTNode(object): def __init__(self, key=None, lchild=None, rchild
阅读全文
摘要:1. 需要熟练 list 对应的函数,参考链接,#26 list.append(obj): 在列表末尾添加新的对象 list.count(obj): 统计某个元素在列表中出现的次数 list.extend(seq): 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) list.in
阅读全文
摘要:LeetCode系列001 - 两数之和 通过哈希思想可以大大缩小时间复杂度,一遍查询一遍存储,因此涉及到查找用字典就对了,只是这个想法很抽象。 新建一个反着的字典,其实字典只关注结果的 v 值,其它的就是叠加进去就行。 LeetCode系列002 - 两数相加 主要考虑链表的使用,首先就是循环读取
阅读全文
摘要:前面我们介绍过 【544】Geohash 相关说明,其实是有一定相关性的。同时跟 【553】rtree,R树 相关 也是有一些关系的。整体思想就是通过一定的规则也就是一个函数,将 key 映射到一个新的小的区域,然后在小的区域查找,就可以明显增加了效率。Geohash 就是将经纬度的坐标点都映射到不
阅读全文