码迷,mamicode.com
首页 >  
搜索关键字:调用栈    ( 403个结果
二叉树遍历的非递归算法
闲来无事,重看了《数据结构》一书,突然发现其中的很多代码写的很精妙,以下就是我对二叉树一部分的做的记录。一般遍历就是使用前序、中序、后序三种遍历,我自己平时都是使用递归算法,今天看书才发现递归算法不是最优解,因为函数调用栈层层叠加,还要保存函数的返回地址,实际参数传递,创建局部变量等等。 一、二叉树 ...
分类:编程语言   时间:2017-08-31 21:09:23    阅读次数:2417
算法竞赛入门经典_4.3_递归
看代码 上面f函数使用了递归,递归由两部分组成,一是递归头,二是递归体。 我们使用gcc调试工具 可以直接使用b f给函数设置断点,断点将设置在函数首部。使用s 进行单步执行,r运行 使用bt查看调用栈,很容易理解递归调用的关系了, 注:由于使用了调用栈,c语言支持递归,调用自己和调用其他函数,并没 ...
分类:编程语言   时间:2017-08-28 21:51:17    阅读次数:221
C/C++打印堆栈信息
转自:http://www.cnblogs.com/zhurizhe/p/3412369.html 在C/C++程序中打印当前函数调用栈 前几天帮同事跟踪的一个程序莫名退出,没有core dump(当然ulimit是打开的)的问题。我们知道,正常情况下,如果程序因为某种异常条件退出的话,应该会产生c ...
分类:编程语言   时间:2017-08-12 22:53:26    阅读次数:484
Python 中的进程、线程、协程、同步、异步、回调(一)
一、上下文切换技术简述在进一步之前,让我们先回顾一下各种上下文切换技术。不过首先说明一点术语。当我们说“上下文”的时候,指的是程序在执行中的一个状态。通常我们会用调用栈来表示这个状态——栈记载了每个调用层级执行到哪里,还有执行时的环境情况等所有有关的信息。..
分类:编程语言   时间:2017-08-09 23:49:04    阅读次数:224
linux 调用栈打印
NDK开发的代码打印方式 #include <utils/CallStack.h> extern "C" void dumping_callstack(void);void dumping_callstack(void){ android::CallStack stack;stack.update( ...
分类:系统相关   时间:2017-08-04 19:34:03    阅读次数:297
reversing.kr easy crack 之write up
之前学逆向感觉学得一踏糊涂,这阶段好多师傅带我,一定要好好学,重新开始,认真学习。 来看打开可执行文件: 用ollydbg载入,单步执行后停到了入口点: 分析入口点,并没有加壳,于是F9执行程序,跳出了程序执行框,随便输入些字符,出现了错误框的提示: F12暂停程序后Alt+k查看调用栈: 补充: ...
分类:其他好文   时间:2017-08-04 10:58:40    阅读次数:134
Linux内核知识杂记
1.内核调试手段 1.printk打印内核状态 2.产生opps时使用GDB查看调用栈 2.内核空间和用户空间区别,通信方式有哪些? Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G。Linux内核将这4G字节的空间分为两部分。将最高的1G字节(从 ...
分类:系统相关   时间:2017-07-30 00:16:21    阅读次数:227
【人生苦短 PYTHON当歌】——PYTHON函数式编程03
Python递归 如果一个函数在内部调用函数自身,这个函数就是递归函数; 下面看一个经典例子:利用Python递归求阶乘 经过CPS变换消除general recursion, 尾递归优化 尾递归基于函数的尾调用,每一级调用直接返回函数的返回值更新调用栈,而不用创建新的调用栈,类似迭代的实现,时间和 ...
分类:编程语言   时间:2017-07-22 20:00:35    阅读次数:273
C#线程
进程和线程 进程是一个系统级别的概念,用来描述一组资源和程序运行所必须的内存分配。每一个进程都有一个唯一的进程标识符(PID);线程是进程的基本单元;进程的入口点创建的第一个线程被称为主线程;线程主要是由CPU寄存器、调用栈和线程本地存储器(Thread Local Storage,TLS)组成的。 ...
分类:编程语言   时间:2017-07-13 23:46:07    阅读次数:179
关于位运算符的计算法方法
我们都知道位运算符比正常的运算符速度要快,但是为什么会快呢?首先我们正常的运算符也是通过计算机通过位运算调用栈来实现的。位运算符计算时,首先将运算量转化为2进制。 那么javascript位运算符有哪些呢? 1. & 按位与 2. | 按位或 3. ^ 按位异或 4. ~ 取反 5. >> 按位左移 ...
分类:编程语言   时间:2017-07-09 19:41:50    阅读次数:354
403条   上一页 1 ... 18 19 20 21 22 ... 41 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!