- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 算法导论 查找算法
二分查找是十分有效的查找算法,但它对数据的初始状态要求有效。如果我们对无序的数据进行排序,平均情况下最少O(nlogn),所以如果初始数据无序的话,二分查找平均情况下最少O(nlogn)。本文提出一个期望为线性时间的选择算法。它是一种分治算法(如同快速排序),渐线性运行时间为O(n)。它与快速排序一样,将输入数组进行递归划分,但它只处理划分的一边。#include <stdio.h> #includ
2015-04-20 11:22:00 478
原创 算法导论 二叉搜索树
二叉搜索树的结构不算复杂,就是删除结点有点复杂,需要注意#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <iostream> using namespace std; class Node { public: int key; Node* left; Node* right; No
2015-04-15 21:17:20 319
原创 算法导论 堆排序
#include <stdio.h> #include <stdlib.h>//求左孩子下标 inline int Left(int i) { return i<<1; }//求右孩子下标 inline int Right(int i) { return (i<<1)+1; }//求父节点下标 inline int Parent(int i) { return i/2; }i
2015-04-01 16:17:58 418
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人