- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 二叉搜索树删除节点完美版
经测试,现在无bug,欢迎指点。//main.cpp/////////////////////////////////////////////////////题目描述:删除给定二叉排序树的给定节点////作者:k_eckel(韦福如)//时间:2005-09-30//////////////////////////////////////////
2012-08-24 13:15:38 1217
转载 二分查找变形
二分查找变形,如{3,5,7,9,11,13,1};这样的数组,这里所说的循环有序数组,就是把一个有序数组从某个(未知)位置处截为两段,把前一段放到后一段的后面(数组里的元素还是有序的,只不过最小值不一定是数组的第一个元素,而可能是其中的任何一项,从它开始逐项递增,到数组的最后一个元素时再回到第一个元素)。显然传统的二分法已经无法直接使用了,但考虑一下,如果已经知道分界点位置,那问题就简单多了
2012-08-18 00:43:38 1343
转载 atoi()和itoa()的标准源码实现
microsoft's versionchar* _itoa(int value, char* string, int radix){ char tmp[33]; char* tp = tmp; int i; unsigned v; int sign; char* sp; if (radix > 36 || radix <= 1) { __set_er
2012-08-18 00:07:41 7708
转载 并查集
等价关系与等价类从数学上看,等价类是一个对象(或成员)的集合,在此集合中的所有对象应满足等价关系。若用符号"≡"表示集合上的等价关系,那么对于该集合中的任意对象x,y, z,下列性质成立:1、自反性:x ≡ x2、对称性:若 x ≡ y 则 y ≡ x3、传递性:若 x ≡ y 且 y ≡ z 则 x ≡ z因此,等价关系是集合上的一个自反、对称、传递的关系。通过金属线
2012-08-17 20:34:55 962
原创 [classic algo]-heap sort 堆排序
#include using namespace std;#define MAXSIZE 10000int data[MAXSIZE];int heapSize = 0;void heapShift(int i) { int left = i*2+1; int right = i*2+2; int largest = i; if(left < heapS
2012-08-17 20:22:42 808
原创 中序,后序非递归遍历
//后序: template void postOrder(TreeNode *root) { stack*> st; TreeNode *p = root; TreeNode *pre = NULL;//pre表示最近一次访问的结点 while(p || st.size()!=0) { //沿着左孩子方向走到最左下 。 whi
2012-08-17 16:20:35 1213
原创 [classic aglo]-quick sort 纯净版
#include#include#include//using namespace std;int partition(int data[], int begin, int end){ int key = data[begin]; while(begin < end) { while(data[end]>=key && begi
2012-08-17 11:05:15 3089
CplplProgrammingCookbook学习c++很好的一本书
2011-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人