- 博客(4)
- 资源 (3)
- 收藏
- 关注
原创 排序算法
#include using namespace std; void out(int *arr,int len) { for(int i=0; i<len; i++) { printf("%d ",arr[i]); } printf("\n"); } //简单排序:选择、冒泡、直接插入 /* 选择排序:从无序区选择一个最值放进有序区。 */ void choice(int *a
2017-10-07 15:56:55 203
原创 二叉排序树
/* 二叉排序树,这里例子的结点只给出关键字 key 插入过程相当于动态排序,可以有折半搜索和线性搜索的性质 最差情况是导致线性搜索,例如下面的例子都是右子树 改进可以用平衡二叉树或称AVL树或称红黑树,从而压缩树深度,越接近折半搜索 */ #include #include using namespace std; struct node { int key; node *lc
2017-10-02 01:50:24 198
原创 折半查找
/** 折半查找:要求表顺序存储和元素关键字有序排列,适用于表不易变动且需频繁查找的情况。 查找过程可以用一棵二叉树表示 实质是根据现有条件,不同的思路来剪枝,最终的效果是访问的事物少了 */ #include using namespace std; //返回查找元素data的下标 int find(int *a,int len,int data) { int l=0; int
2017-10-01 16:04:02 307
原创 链队列
/** 头结点:如果没有头结点那么插入和删除就会多一种情况要处理。 //这里如果没有头结点,当root开始为空,导致新建第一个结点找不到。 */ #include using namespace std; struct node { int data; node *link; }; //声明单链表头结点 node *first; /** 单链表的查找:查找第k个结点(可包括头结点,
2017-10-01 00:23:31 233
javascript轮播图
2018-01-06
gradle-2.4-all.zip
2017-08-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人