算法
itsunyang
这个作者很懒,什么都没留下…
展开
-
平衡二叉树(AVL树)
平衡二叉树的旋转,查找,插入节点,删除节点平衡二叉树,(AVL树,Balenced Binary Search Tree)。1.定义1)是一棵二叉查找树(BST)2) 任意一棵子树,其左右子树的高度差不大于1由于实现起来要考虑不少细节,所以本篇不再提供代码,主转载 2011-08-10 15:36:54 · 279 阅读 · 0 评论 -
排序算法
1.插入排序1.1直接插入排序一趟排序:第i趟排序,此时其0...i-1个元素时有序的,相当于把p[i]插入前0...i-1个有序序列中,形成新的有序序列0...i。整个排序过程:对i从1...n-1重复执行上述一趟排序时间复杂度:O(n2),稳定排序转载 2011-08-10 16:09:44 · 177 阅读 · 0 评论 -
普通二叉排序树
1.二叉查找树(BST,Binary Search Tree)注意和堆排序中的堆区分开。参考我的博客,常见内排序算法中的堆排序。定义:1)如果左子树不空,那么左子树的所有节点均小于根节点 2)如果右子树不空,那么右子树的所有节点均大于根节点转载 2011-08-10 15:35:27 · 396 阅读 · 0 评论 -
背包问题
(编程题)设有一个背包可以放入的物品的重量为s,现有n件物品,重量分别为w[1];w[2]; … ;w[n]。问能否从这n件物品中选择若干件放入此背包中, 使得放入的重量之和正好为s。如果存在一种符合上诉要求的选择,则称此背包问题有解(或称其解为真);否则称此背包问题无解转载 2011-08-10 16:17:42 · 379 阅读 · 0 评论 -
KMP算法
问题:主串s(长度n),模式串p(长度m),从主串s中找到第一个p的位置1.原始算法思路:两个指针(并不是真正的指针,方便描述而已)i和j,i指向s的元素,j指向p的元素; 如果s[i]==p[j],那么i++,j++,往下走; 如果s转载 2011-08-10 16:16:03 · 272 阅读 · 0 评论