什么是堆,什么是栈,什么是数据段,什么是代码段...这些都是历史遗留问题,如今编程真的没有必要在意这些了!不要被/proc/xx/{maps,smaps}里面的内容所迷惑和萦绕,自己管理好自己的内存分配就好,如果程序不是自己写的,那么就找写它的人。本文将从一个链接动态库的可执行文..
分类:
其他好文 时间:
2014-05-27 03:15:06
阅读次数:
313
这道题本来思路并不复杂,先对第一列做binary search,
找到target所在的行,再对所在的行做binary
search,找到target在或不在。但是我在编程的时候遇到了很多问题,堆栈溢出(StackOverflowError)折腾死我了,一些边界条件的考虑也颇费周折。我之所以会碰到堆...
分类:
其他好文 时间:
2014-05-23 08:35:31
阅读次数:
294
1 缓冲区溢出原理
缓冲区是一块连续的计算机内存区域,可保存相同数据类型的多个实例。缓冲区可以是堆栈(自动变量)、堆(动态内存)和静态数据区(全局或静态)。在C/C++语言中,通常使用字符数组和malloc/new之类内存分配函数实现缓冲区。溢出指数据被添加到分配给该缓冲区的内存块之外。缓冲区溢出....
分类:
其他好文 时间:
2014-05-23 08:05:04
阅读次数:
332
【迷宫问题】
【算法1---堆栈回溯】
计算机解迷宫时,通常用的是"试探和回溯"的方法,即从入口出发,顺某一方向向前探索,若能走通,则继续往前走;否则沿原路退回,换一个方向再继续探索,直至所有可能的通路都探索到为止,如果所有可能的通路都试探过,还是不能走到终点,那就说明该迷宫不存在从起点到终点的通道。
1.从入口进入迷宫之后,不管在迷宫的哪一个位置上,都是先往东走,如果走得通...
分类:
其他好文 时间:
2014-05-22 13:25:23
阅读次数:
283
剑指offer上的第22题,九度OJ上AC。
题目描述:
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。
输入:
每个测试案例包括3行:
第一行为1个整数n(1<=n<=100000),表示序列的长度。
第二行包含n个整数,表示栈的压入顺序。
第三行包含n个整数,表示栈的弹出顺序。
输出:
对...
分类:
其他好文 时间:
2014-05-22 10:10:28
阅读次数:
286
前段时间数据结构的作业里有一个这样的题跟大家分享一下:
若栈采用顺序存储方式存储,现两栈共享空间V[1..m], top[i]代表第i个栈( i =1,2)栈顶,栈1的底在v[1],栈2的底在V[m],则栈满的条件是( )。
A. |top[2]-top[1]|=0 B. top[1]+1=top[2]
C. top[1]+top[2]=m D....
分类:
其他好文 时间:
2014-05-22 09:48:38
阅读次数:
258
剑指offer上的第21题,之前在Cracking the Coding interview上做过,思路参考这里,这次写了测试函数,在九度OJ上测试通过。
题目描述:
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。
输入:
输入可能包含多个测试样例,输入以EOF结束。
对于每个测试案例,输入的第一行为一个整数n(1<=n<=1000000), n代表将要输入的操作的步骤数。
接下来有n行,每行开始有一个字母Ci。
Ci=’s’时,接下有一个数字k,代表将k压入栈。
Ci=’o’时,...
分类:
其他好文 时间:
2014-05-22 07:15:30
阅读次数:
318
1.网络编程中设计并发服务器,使用多进程与多线程 ,请问有什么区别
1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。
2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。
区别:两者都可以提高程序的并发度,提高程序运行效率和响应时间。线程和进程在使用上各有优缺点:线程执行开销小,...
分类:
编程语言 时间:
2014-05-22 06:16:44
阅读次数:
386
先附上题目要求:下面附上数据结构框图,本人整理(勿喷!)在解题的时候用到了栈和队列,其中货车FILO用到了栈的结构,各国运货平台FIFO用到了队列结构,动态分配各运货平台,其实题目读懂之后模拟整个运货平台分理过程也没有那么难,关键是做好数据结构!下面附上代码:
1 #include 2 #in...
分类:
其他好文 时间:
2014-05-22 05:33:25
阅读次数:
287
数据的逻辑结构数据的存储结构单链表是递归结构迭代是指从当前元素获得集合中的后继元素。迭代功能由Tterable可迭代接口和Tterator迭代器接口实现。栈和队列是两种特殊的线性表,特殊之处在于插入和删除操作的位置受到限制。栈:插入和删除只允许在线性表的一端进行,后进先出..
分类:
其他好文 时间:
2014-05-20 23:20:54
阅读次数:
436