为什么归并排序如此有用?1.
快捷和稳定归并排序成为?一个非常棒的排序算法主要是因为它的快捷和稳定。它的复杂度即使在最差情况下都是O(n log
n)。而快速排序在最差情况下的复杂度是O(n^2),当n=20的时候,它比归并要慢4.6倍。2.容易实现#coding:utf-8def merge_so...
分类:
编程语言 时间:
2014-05-09 03:44:58
阅读次数:
386
算法是什么,即是按照一定的步骤,一步步去解决某个问题,解决问题的方法步骤就称为算法,例如数学中我们学过的做一个运算,解一个方程,等等,都需要有一个清晰的思路,一步步地去完成。可以说算法就在身边。算法和计算机有什么关系,计算机它是机器,没有人类的大脑可以思考,但是它怎么完成我们交给他的人物的呢,就是通过算法(当然是人为预先设计好的),计算机解决任何问题都要依赖于算法,没有算法也就没有计算机。
为了...
分类:
其他好文 时间:
2014-05-09 02:22:20
阅读次数:
274
递归调用子程序如果一个子程序直接调用他自己,这种调用称为字节递归调用,如果一个子程序间接调用自己,这种调用称为间接递归调用递归调用子程序必须采用寄存器或堆栈传递参数,递归的深度受到堆栈空间的限制下面的子程序递归调用实现求阶乘;子程序说明
FACT;功能,计算N!;入口参数:(AX) = n;出口参....
分类:
其他好文 时间:
2014-05-08 18:13:53
阅读次数:
253
今天完成了第七章,也就是《自己动手写操作系统》的全部章节,不过还存在一些小问题,比如在ring3下调用callgate实现向ring0的跳转,这个当初就没做成功。暂时先放着,要继续下面章节的学习了。
小结一下吧:
开发环境:操作系统是win7。虚拟机VMware,装ubuntu。我是再win7下完成的boot和loader的开发,然后内核是在虚拟机中的ubuntu中完成的。因为内核部分是elf...
分类:
其他好文 时间:
2014-05-08 17:26:27
阅读次数:
312
二叉树前序、中序和后序的遍历方法(递归、用栈和使用线索化)...
分类:
其他好文 时间:
2014-05-08 17:25:55
阅读次数:
341
主要是针对嵌套列表问题。列表套列表,到底子列表那个更深。。。
这个问题想着就烦。如果嵌套10000万个列表是不是要统计10000个数再排序呢?
最后想了想用 list的extend功能 加上递归函数尝试了一下,代码如下:
l1=[1,'a',[1],[2,3,[4,5,[6,7,[7]]]],[2,5,[5,6]],[4],[5],[6]]
#l1 = [1, 2, [3,...
分类:
编程语言 时间:
2014-05-08 16:11:36
阅读次数:
438
在2^k*2^k个方格组成的棋盘中,有一个方格被占用,用下图的4种L型骨牌覆盖所有棋盘上的其余所有方格,不能重叠。
代码如下:
def chess(tr,tc,pr,pc,size):
global mark
global table
mark+=1
count=mark
if size==1:
return
half=size//2
if pr<t...
分类:
编程语言 时间:
2014-05-08 16:04:51
阅读次数:
367
大学时上的计算机系,清华九号楼宿舍里熄灯后的夜谈话题除了现实及金庸、古龙虚拟世界中的牛肉汤、小师妹,就是软硬件的华山论剑。
到底是软件更牛,还是硬件更牛?是计算机系还是电子系更牛?...
分类:
其他好文 时间:
2014-05-08 15:46:49
阅读次数:
263
好,二叉搜索树粉末登场,有关他的问题有这么几个,给你一个n,怎样求所有的n个节点的二叉搜索树个数?能不能把所有的这些二叉搜索树打印出来?
这道题倒不用考虑这么多,直接转就行了,我用的思想是分治,每次找到一半的位置,分离出中间节点,作为新子树的根节点,然后递归构造前半部分和后半部分。
class Solution {
public:
TreeNode *sortedListToBST(L...
分类:
其他好文 时间:
2014-05-08 11:07:14
阅读次数:
266
在更新上面一道题的时候我就想,是不是还有一道打印路径的,果不其然啊。
这种题非常常见的,做法也很简单,我是用一个引用的vector来存,满足条件之后直接压入结果集中,当然也可以用数组之类的,都一样。用引用需要注意的问题就是递归进行到后面的时候会对栈中的上层状态产生影响,当然可以用传值的方法来避免这个问题,但是那样子开销太大了(每次船建和销毁一个类对象,不是明智的选择)。那么就是要回退,那什么时候...
分类:
其他好文 时间:
2014-05-08 11:03:31
阅读次数:
248