C/C++
文章平均质量分 76
PointerOnFuture
这个作者很懒,什么都没留下…
展开
-
一个先序或后序序列 还原唯一 二叉排序树 (C语言实现)
以下首先是说明,一个先序原创 2014-05-06 18:44:27 · 1842 阅读 · 0 评论 -
c++中关于数组作为函数参数并传递数组元素个数的几种有效方法的讨论
//由于数组的元素个数默认情况下是不作为实参内容传入调用函数的,本程序用来讨论有此带来的 //相关问题,以及解决问题方法,即给调用函数传递数组的元素个数的几种有效方法并实现它转载 2014-05-06 17:13:48 · 769 阅读 · 0 评论 -
C,C++表达式求值顺序
裘宗燕:C/C++ 语言中的表达式求值经常可以在一些讨论组里看到下面的提问:“谁知道下面C语句给n赋什么值?”m = 1; n = m+++m++;最近有位不相识的朋友发email给我,问为什么在某个C++系统里,下面表达式打印出两个4,而不是4和5:a = 4; cout C++ 不是规定 要弄清这些,需要理解的一个问题是:如果程序里某处修改了一个变量(通过赋值、增量转载 2014-05-08 18:51:54 · 483 阅读 · 0 评论 -
检测单链表中是否有环--快慢指针法
问题描述:在单向链表中,每个结点都包含一个指向下一个结点的指针,最后一个结点的这个指针被设置为空。但如果把最后一个结点的指针指向链表中存在的某个结点,就会形成一个环,在顺序遍历链表的时候,程序就会陷入死循环。我们的问题就是,如何检测一个链表中是否有环,如果检测到环,如何确定环的入口点(即求出环长,环前面的链长)。一种比较耗空间的做法是,从头开始遍历链表,把每次访问到的结点(或其地址)存转载 2014-08-07 16:39:58 · 767 阅读 · 0 评论 -
堆排序_C语言实现
#include #include void AdjustHeap(int *arr, int s, int e) { int temp = arr[s]; for(int j=2*s+1; j<=e; j=j*2+1) { if(j arr[j+1]) ++j; if(arr[j] > temp) break;原创 2014-09-08 14:54:03 · 392 阅读 · 0 评论 -
二叉树前序,中序,后序非递归遍历
#include #include #include #include #include using namespace std;struct Node { int value; Node *pLChild; Node *pRChild; }; void Visit(Node *node) { printf原创 2014-09-08 14:15:12 · 430 阅读 · 0 评论 -
归并排序
#include #include void Merge(int arr[], int low, int mid , int high, int temp[]) { int i, j,k; for(i = low, j = mid+1,k = 0; i<=mid && j <=high;k++) { if(arr[i] < arr[j]) temp[k] =原创 2014-09-09 09:48:28 · 393 阅读 · 0 评论 -
设计模式C++练习(1)_工厂模式
#include #include using namespace std;//抽象工厂模式class SingleCore { public: virtual void f()=0;};class SingleCoreA : public SingleCore { public: void f(){cout << "Sing原创 2014-09-14 21:53:49 · 548 阅读 · 0 评论