
数据结构算法
zhengfushijie
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
计数排序
计数排序是一种算法复杂度 O(n) 的排序方法,适合于小范围集合的排序。比如100万学生参加高考,我们想对这100万学生的数学成绩(假设分数为0到100)做个排序。我们如何设计一个最高效的排序算法。本文不光给出计数排序算法的传统写法,还将一步步深入讨论算法的优化,直到时间复杂度和空间复杂度最优。 先看看计数排序的定义 Counting sort (sometimes referred to原创 2014-11-06 14:27:33 · 310 阅读 · 0 评论 -
单链表
// LinkList.cpp : 定义控制台应用程序的入口点。 //定义的链表不含头结点 #include using namespace std; template //定义结点 struct Node { Type data; Node *next; }; //定义链表 template class LinkList { public: LinkList();//默认构造函数原创 2014-10-03 11:10:48 · 342 阅读 · 0 评论 -
线性表顺序存储
线性表的xin #define MaxSize 50 typedef struct { ElemType data[MaxSize]; int length; }原创 2014-09-25 19:58:36 · 428 阅读 · 0 评论 -
horspool算法
代码都经过 #include using namespace::std; const int n=26,m=6; void main() { char T[] = "JIM_SAW_ME_IN_A_BARBERSHOP"; int Table[] = {6,6,6,6,6,4,6,6,6,1,6,6,6,6,4,6,2,4,3,2,1,3,6,6,6原创 2014-08-16 15:30:21 · 906 阅读 · 0 评论 -
二叉查找树(二叉排序树)的详细实现
1、序 详细实现了二叉查找树的各种操作:插入结点、构造二叉树、删除结点、查找、 查找最大值、查找最小值、查找指定结点的前驱和后继 2、二叉查找树简介 它或者是一棵空树;或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值; (3)左、右子树也分别为二叉排序树 3、转载 2014-08-13 22:47:11 · 360 阅读 · 0 评论 -
约瑟夫环
用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。(约瑟夫环问题 Josephus)原创 2014-11-09 16:53:52 · 368 阅读 · 0 评论 -
数组实现堆排序(c++)
#include #include using namespace std; void swap(int&a,int&b); int max(int &a,int &b); void heap(int a[],int p); const int n =11; void main() { int n; cout cin>>n; in原创 2014-08-16 08:15:19 · 675 阅读 · 0 评论