C/C++
Monkey_Coder
catch me if you can
展开
-
二叉排序树C++构造
二叉排序树或者是一颗空树,或者是具有以下性质的树 1.左子树(如果存在)上的所有节点的关键字都小于根节点的关键字 2.右子树(如果存在)上的所有节点的关键字都大于根节点的关键字 3.左子树和右子树也是二叉排序树原创 2015-12-25 21:34:25 · 1641 阅读 · 1 评论 -
二叉树的三种基本遍历
前序遍历 中序遍历 后续遍历原创 2015-12-26 21:01:35 · 582 阅读 · 0 评论 -
二叉树层序遍历
二叉树的层序遍历原创 2016-01-05 21:18:40 · 587 阅读 · 0 评论 -
二叉排序树节点删除&简单性能分析
第一种方法: a.如果被删除的节点p没有左子树,则用p的右孩子代替p即可 b.否则,在p的左子树中找到关键字最大的节点r,将r的右指针指向p的右孩子,用p的左孩子代替p即可 第二种方法: a.如果被删除的节点p没有左子树,则用p的右孩子代替p即可 b.否则,在p的左子树中找到关键字最大的节点r,用原创 2016-01-08 20:17:22 · 797 阅读 · 0 评论 -
堆和栈的区别(转过无数次的文章)
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两转载 2016-02-22 12:20:54 · 269 阅读 · 0 评论 -
内存溢出,内存泄露,内存越界,栈溢出
内存溢出:用户要求系统分配的内存空间超出了系统所能提供的范围,称内存溢出 内存泄露:用户向系统申请内存(new),使用完后没有释放的情况(delete),导致了该块内存不能再被用户使用,也不能被系统调用。我们常说的内存泄露指的是堆泄露 内存越界:使用已申请的内存时,超出了内存的界限。 栈溢出:栈满时再做进栈必定产生空间溢出,叫上溢,栈空时再做退栈也产生空间溢出,称为下溢。 ps:典型的,在转载 2016-02-26 23:24:13 · 2452 阅读 · 0 评论