简述树的深度优先及广度优先遍历算法,并说明非递归实现。原题出自百度的笔试:当时我看到这个题目的时候,已经完全记不得非递归算法该怎么实现了,后来查阅了一下,要用到两个辅助的数据结构:深度优先遍历--->栈;广度优先遍历--->队列;这里以二叉树为例来实现。import
java.util.ArrayD...
分类:
其他好文 时间:
2014-05-20 02:33:07
阅读次数:
425
Java内存分配:1. 寄存器:我们在程序中无法控制 2.
栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 3. 堆:存放用new产生的数据 4.
静态域:存放在对象中用static定义的静态成员 5. 常量池:存放常量 6. 非RAM存储:硬盘等永久存储空间 -----...
分类:
其他好文 时间:
2014-05-19 23:44:20
阅读次数:
446
http://blog.chinaunix.net/uid-21411227-id-2780269.htmlOSI/RM(Open
System Interconnection/Reference
Model)——开放系统互连参考模型,1983年ISO颁布的网络体系结构标准。从低到高分七层:物理层、...
分类:
其他好文 时间:
2014-05-17 14:56:53
阅读次数:
254
重入即表示重复进入,首先它意味着这个函数可以被中断,其次意味着它除了使用自己栈上的变量以外不依赖于任何环境(包括static),这样的函数就是purecode(纯代码)可重入,可以允许有该函数的多个副本在运行,由于它们使用的是分离的栈,所以不会互相干扰。,常见的情况是,程序执行到某个函数foo(.....
分类:
编程语言 时间:
2014-05-16 04:10:01
阅读次数:
345
回文:字符对称排列的字符串,例如ABCBA思路:根据队:先进先出和栈:
先进后出的原则,进行比较出队和出栈的字符是否相等。如果相等,则为回文。创建控制台应用程序。 1 #region 字符节点类 2 class CharNode 3
{ 4 ...
分类:
其他好文 时间:
2014-05-16 00:48:54
阅读次数:
389
在这之前,你要知道Task就是一个堆栈,栈顶的activity就是当前显示的activity,启动一个新的activity的时,一般直接压入堆栈,并成为当前运行的activity,前一个activity仍然在堆栈中,按下back键时,当前activity出栈,而前一个恢复为当前运行的activity...
分类:
其他好文 时间:
2014-05-16 00:40:58
阅读次数:
521
这周有位新同事请我帮忙看一个关于信号处理的问题,程序希望在收到一个信号后退出,而他在信号处理方法里却做了许多事,包括释放一些全局内存等。这样问题就产生了,程序不定时的就挂死了,用gdb一看,所有的线程都挂在了pthread_once方法里,而似乎每个线程都在处理信号,其中产生问题的线程堆栈如下:Thread 1 (Thread 0x7f41252f3720 (LWP 31542)):#0 0x00...
分类:
其他好文 时间:
2014-05-15 19:33:14
阅读次数:
248
进程:程序执行的一个实例,充分描述程序已经执行到何种程度的数据结构的集合.目的:担当资源分配的实体.每个线程是进程的一个执行流,可以由内核独立调度.标示一个进程进程和进程描述符一一对应.并且一个线程组公用一个PID.进程描述符处理:
Linux吧内核态的进程堆栈和紧挨进程描述符的小数据结构threa...
分类:
其他好文 时间:
2014-05-15 12:05:28
阅读次数:
261
中断信号的作用.使CPU转而去运行正常控制流之外的代码.为了它.就要在内核态堆栈保存程序计数器的当前值(eip和cs寄存器).并把与中断类型相关的一个地址放在程序计数器.中断处理与进程切换的差异:由中断或异常处理程序执行的代码不是一个进程,而是内核控制路径.代表中断发生时正在运行的进程执行.其比进程...
分类:
其他好文 时间:
2014-05-15 11:36:26
阅读次数:
304
tarjan算法第一题
喷我一脸。。。。把手写栈的类型开成了BOOL,一直在找错。。。
#include
#include
#include
#include
#define maxn 100005
const int MOD=1000000007;
using namespace std;
struct node
{
int to,next;
}edge[maxn...
分类:
其他好文 时间:
2014-05-15 08:18:56
阅读次数:
353