
数据结构
代码痴汉
这个作者很懒,什么都没留下…
展开
-
二叉树的遍历
最近在北京去一家做C开发的公司笔试,考查了二叉树的三种遍历:前序(先序、先根)、中序(中根)、后序(后根) 题目如下: 二叉树的前序遍历输出:ABDHEICFJK 中序遍历输出:DHBEIACJFK 画出此二叉树并写出后序遍历输出 推导过程如下:1.由前序输出知道树根为A, 再由中序知原创 2013-11-10 20:59:06 · 856 阅读 · 0 评论 -
哈希存储和冲突解决办法
一、哈希表的概念及作用 一般的线性表,树中,记录在结构中的相对位置是随机的,即和记录的关键字之间不存在确定的关系,因此,在 结构中查找记录时需进行一系列和关键字的比较。这一类查找方法建立在“比较“的基础上,查找的效率依赖于查找过 程中所进行的比较次数。 理想的情况是能直接找到需要的记录,因此必须在记录的存储位置和它的关键字之间建立一个确定的对应关系f, 使每个原创 2013-11-10 21:59:58 · 1768 阅读 · 0 评论 -
linux进程的5中不同的数据段
5个数据段 进程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途 不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。对任何一个普通进程来讲,它都会涉及到5种不同的数据段。 Linux进程的五个段 下面我们来简单归纳一下进程对应的内存空间中所包含的转载 2013-12-01 21:34:34 · 1236 阅读 · 0 评论 -
堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两转载 2013-12-01 21:39:00 · 590 阅读 · 0 评论