摘要:
数组理论基础 数组是非常基础的数据结构,在面试中,考察数组的题目一般在思维上都不难,主要是考察对代码的掌控能力 也就是说,想法很简单,但实现起来 可能就不是那么回事了。 首先要知道数组在内存中的存储方式,这样才能真正理解数组相关的面试题 数组是存放在连续内存空间上的相同类型数据的集合。 数组可以方便 阅读全文
摘要:
内存管理 不同语言的内存管理 不同语言的内存管理方式: C/C++这种内存堆空间的申请和释放完全靠自己管理 Java 依赖JVM来做内存管理,不了解jvm内存管理的机制,很可能会因一些错误的代码写法而导致内存泄漏或内存溢出 Python内存管理是由私有堆空间管理的,所有的python对象和数据结构都 阅读全文
摘要:
算法性能提升总结 巧用hash表 利用hash,来进行映射,从而降低代码的复杂度,和冗余度 eg: 求两个数之和 class Solution: def twoSum(self, nums: List[int], target: int)->List[int]: """ 暴力方法实现时间复杂度为O( 阅读全文
摘要:
算法性能分析 时间复杂度分析 递归算法的时间复杂度 例题一: 求x的n次方 用一道题目,同样使用递归算法, 有的写出了O(n)的代码,有的写出了O(longn)的代码 时间复杂度为:O(n) 最直观的写法, 一个for循环求出结果,代码如下: def sample_1(x, n): result = 阅读全文