编程基础
文章平均质量分 76
pro_leo
Geek改变世界
展开
-
你真的懂单链表吗
首先,上一道开胃菜:怎么判断两个单链表是否相交? 我们假设两个单链表分别是A(有m个结点)和B(有n个结点),当然,最容易想到的肯定是两层循环,遍历A中的元素,然后分别与B中的元素进行比较,但是这样做的时间复杂度达到了O(m*n),那么有没有更简单的办法呢?肯定有! 我们来看看单链表的性质:每个结点只通过一个指针指向后继结点。那么是不是意味着两个单链表如若相交,它们原创 2014-08-31 22:17:13 · 404 阅读 · 0 评论 -
Python那些你不知道的事—不可变类型的缓存
num1和num2的值都是1,它们的内存地址也都是一致的;而num3和num4的值也都是1.0,但是它们的内存地址却不同。这是为什么呢? 在Python中,字符串和整型对象都是不可变的(immutable)类型,因此Python会很高效地缓存它们。这样的处理机制能提升Python的性能。 Python能够帮我们缓存多少呢?Python2.3 简单整数缓存范围是(-1,100),Python2.5.4以后简单整数缓存范围至少是(-5,256)。所有的单字符也都在缓存区。原创 2014-12-07 11:36:00 · 1954 阅读 · 3 评论