数据结构
文章平均质量分 75
seuzyq
这个作者很懒,什么都没留下…
展开
-
折半插入排序
折半插入排序(binary insertion sort)是对插入排序算法的一种改进,由于排序算法过程中,就是不断的依次将元素插入前面已排好序的序列中。由于前半部分为已排好序的数列,这样我们不用按顺序依次寻找插入点,可以采用折半查找的方法来加快寻找插入点的速度。 折半插入排序算法的具体操作为:在将一个新元素插入已排好序的数组的过程中,寻找插入点时,将待插入区域的首元素设置为a[low原创 2009-10-05 19:08:00 · 5820 阅读 · 4 评论 -
二叉树 建立 && 遍历 && 深度 && 树形打印 (增强版)
#include#include #include typedef int DataType; typedef struct Node{ DataType data; struct Node *LChild; struct Node *RChild;}BitNode,*BitTree;void CreatBiTree(BitTree *bt)//用扩展先序遍历序列创建二叉树,如果是#当前树原创 2009-10-06 22:35:00 · 1721 阅读 · 0 评论 -
直接插入排序
直接插入排序(straight insertion sort)的作法是: 每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序。 第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从后向前扫描,把第三个数按大小插入到有序表中;依次进行下去,进行了(n-1)趟扫描以后就完成了整个排序过程。 直接插入排序属于稳定的排序,时转载 2009-10-05 16:34:00 · 618 阅读 · 0 评论 -
希尔排序(Shell Sort)
希尔排序(Shell Sort)又叫做缩小增量排序(diminishing increment sort),是一种很优秀的排序法,算法本身不难理解,也很容易实现,而且它的速度很快。 基本思想: 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2 该方法实质上是一种分原创 2009-10-05 20:42:00 · 974 阅读 · 2 评论 -
二叉树建立和遍历
#include "stdio.h" #include "stdlib.h" typedef char elemtype; typedef struct btnode{ elemtype data; struct btnode *lchild; struct btnode *rchild; }bitnode,*bitree; bitree CreateBiTree()转载 2009-10-06 22:18:00 · 543 阅读 · 0 评论