接着上一篇读书笔记:先简单介绍了栈、队列和背包,然后涉及算法分析和书中的研究算法的方法。
分类:
其他好文 时间:
2014-05-10 07:52:56
阅读次数:
285
1.priority_queue priority_queue,greater >q;
//小根堆,即对头元素最小; priority_queue//默认情况,大根堆,即队头元素最大。(后续更新)2.deque【双端队列】
接口类似vector(单向插入删除) c.pop_back() 弹出最后一个...
分类:
编程语言 时间:
2014-05-10 05:30:09
阅读次数:
348
栈(操作系统):由编译器自动分配释放
,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈栈使用的是一级缓存, 他们通常都是被调用时处于存储空间中,调用完毕立即释放堆(操作系统):
一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。堆则是存放在二...
分类:
其他好文 时间:
2014-05-10 05:27:11
阅读次数:
294
第一章 内存分配
1. 内存区域。
方法区和堆(线程共享),程序计数器 , VM栈 和 本地方法栈(线程隔离)。
1) java虚拟机栈:线程私有。描述的是java方法执行的内存模型:栈帧,用户存储 局部变量表,操作数栈,动态链接,方法出口等信息。
局部变量表在编译时即可完全确定!如果线程请求的栈深度大于 规定的深度,StackOverflowErro...
分类:
其他好文 时间:
2014-05-10 04:47:01
阅读次数:
275
应用需求:
在网盘开发过程中有这样一个需求,即对文件版本进行控制,即记录文件版本的更替信息,这里说的更替信息仅仅是记录不同时刻的文件变化,即文件的增、删、改、重命名等操作。在每个待监控的目录下都会保存一份文件,记录文件变化的增量信息,每次低版本到高版本升级的时候就可以通过消元合并操作快速地进行。关于文件版本控制的具体实现方案会在开发完善后列出,这里仅仅指出它的保存方式,即将文件操...
分类:
其他好文 时间:
2014-05-10 03:37:35
阅读次数:
368
1. ArrayList概述:
ArrayList 是一个数组队列,相当于 动态数组。与Java中的数组相比,它的容量能动态增长。它继承于AbstractList,实现了List, RandomAccess, Cloneable, java.io.Serializable这些接口。
ArrayList 继承了AbstractList,实现了List。它是一个数组队列,提供了相关的添加、删除...
分类:
编程语言 时间:
2014-05-10 03:32:23
阅读次数:
408
数组和指针的区别2010-04-07 17:32:40分类:C/C++
C++/C程序中,指针和数组在不少地方可以相互替换着用,让人产生一种错觉,以为两者是等价的。数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组...
分类:
其他好文 时间:
2014-05-10 03:21:20
阅读次数:
278
这段时间在群里看到很多人在问一些关于队列,同步,异步的总是,现在抽空给总结一下现在先说两个基本的概念,啥是进程,啥是线程,啥又是多线程;先把这两个总是给弄清再讲下面的进程:正在进行的程序,我们就叫它进程.线程:线程就是进程中的一个独立的执行路径.这句话怎么理解呢!
一个程序它是按顺序从上往下执行的,...
分类:
移动开发 时间:
2014-05-10 03:07:30
阅读次数:
351
一、最基本的工作1、准备RAM
如果是SRAM这步可以省略,但如果是SDRAM就需要配置一下时序才能使用。RAM是必须准备的,没有RAM将来的全局变量和堆栈在哪儿开辟。2、准备SP
SP肯定是设置在RAM中。SP必须设置好,不然程序怎么跳转到C函数运行--需要入栈操作。3、准备代码 对于处理器...
分类:
其他好文 时间:
2014-05-10 02:59:42
阅读次数:
238
进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动。
进程是系统进行资源分配和调度的一个独立单位.。 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。
线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),...
分类:
编程语言 时间:
2014-05-10 02:35:32
阅读次数:
341