算法和数据结构
文章平均质量分 60
yal49
这个作者很懒,什么都没留下…
展开
-
八大排序之堆排序
#pragma oncevoid AdjustDown(int*a,size_t size, size_t parent){ size_t child = parent * 2 + 1; while (child < size) { if (child + 1 a[child]) { child++; } if (a[child]>a[parent]) {原创 2016-08-02 22:21:13 · 256 阅读 · 0 评论 -
八大排序算法之插入排序
#pragma oncevoid ShellPort(int *a, int size){ for (int gap = size / 2; gap > 0; gap=gap/2) { for (int i = 0; i < gap; i++) { for (int j = i + gap; j < size; j = j + gap) { if (a[j] <原创 2016-08-02 22:18:48 · 259 阅读 · 0 评论 -
二叉树中找两个结点的最近公共祖先结点
一、搜索二叉树:第一变种是二叉树是一种特殊的二叉树:查找二叉树。也就是树是排序过的,位于左子树上的结点都比父结点小,而位于右子树的结点都比父结点大。我们只需要从根结点开始和两个结点进行比较。如果当前结点的值比两个结点都大,则最低的共同父结点一定在当前结点的左子树中。如果当前结点的值比两个结点都小,则最低的共同父结点一定在当前结点的右子树中。(45)二、三叉链(可以找到父节点):遍历4节原创 2016-08-25 20:34:59 · 10141 阅读 · 1 评论