原题地址:http://oj.leetcode.com/problems/linked-list-cycle/题意:判断链表中是否存在环路。解题思路:快慢指针技巧,slow指针和fast指针开始同时指向头结点head,fast每次走两步,slow每次走一步。如果链表不存在环,那么fast或者fast...
//如有错误或不同观点,欢迎批评与讨论!首先,prototype出现的目的,是为了解决
代码重用 的问题 , prototype 相当于是在内存上划分出一个公共的区域, 专用于存放 实例化对象 的相同方法或属性,
一份代码,人人可用;为方便理解,我们可以先把prototype 当作是CSS中的 cl...
声明( declaration )是告诉编译器某个东西的名称和类型( type
),但略去细节。下面是声明的例子:extern int x; //对象(object )声明size_t numDigits( int number );
//函数声明( function ) 声明class...
CountDownLatch
类是一个倒计时计数器,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数初始化
CountDownLatch。由于调用了countDown() 方法,所以在当前计数到达零之前,await
方法会一直受阻塞。之后,会释放所有等待的线程,aw...
原题地址:http://oj.leetcode.com/problems/linked-list-cycle-ii/题意:如果链表中存在环路,找到环路的起点节点。解题思路:这道题有点意思。首先使用快慢指针技巧,如果fast指针和slow指针相遇,则说明链表存在环路。具体技巧参见上一篇http://w...
JDK1.5提供了Exchanger用于两个线程的数据交换。两个线程先后到达交换点,先到达的线程会等待后到达的线程,然后两个线程互相交换数据,交换后双方持对方的数据。Exchanger只提供了一个构造器:Exchanger():创建一个新的Exchanger。Exchanger中也只有两个方法:V
...
一、const应用1.const关键字,他后面内容的不可修改,一般来说,其修饰的变量不可再进行赋值操作;2.常量指针int
a= 3;int b = 4;const int* pt = &a;a =
5;*pt的值为5,pt只是一个指针,所以他指向的是a的内容,const限制的是*pt,所以,只是不...
C语言编写的bmp读写程序 建议先把bmp的数据存储格式了解下[cpp]view
plaincopy#include"Windows.h"#include"stdio.h"#include"string.h"#include"malloc.h"unsignedchar*pBmpBuf;//读入图像数...
正在学习《大型网站系统与JAVA中间件实践》,发现对BIO、NIO、AIO的概念很模糊,写一篇博客记录下来。先来说个银行取款的例子:同步 :
自己亲自出马持银行卡到银行取钱(使用同步IO时,Java自己处理IO读写)。异步 :
委托一小弟拿银行卡到银行取钱,然后给你(使用异步IO时,Java将IO读...
JDK1.5提供了阻塞队列接口BlockingQueue,它是一个有界阻塞队列。BlockingQueue实现是线程安全的,可以安全地与多个生产者和多个使用者一起使用。使用时用其实现类ArrayBlockingQueue,它一个由数组支持的有界阻塞队列。此队列按
FIFO(先进先出)原则对元素进行排...
一、java虚拟机内存原型寄存器:我们在程序中无法控制。栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中堆:存放用new产生的数据静态域:存放在对象中用static定义的静态成员常量池:存放常量非RAM存储:硬盘等永久存储空间。二、常量池(constant
pool) 常....
原题地址:http://oj.leetcode.com/problems/swap-nodes-in-pairs/题意:将链表中的节点两两交换。Given1->2->3->4,
you should return the list as2->1->4->3.解题思路:这题主要涉及到链表的操作,没什么...
原题地址:http://oj.leetcode.com/problems/remove-nth-node-from-end-of-list/题意:Given
a linked list, remove thenthnode from the end of list and return its he...
原来void是将其后的字面量当元表达式执行,并永远返回undefined。同时undefined不是关键词。。由于JS表达式偏啰嗦,于是最近便开始采用Coffeescript来减轻负担。举个栗子,当我想取屋子里的第一条dog时,首先要判断house对象是否存在,然后再判断house.dogs是否存在...
1 #include 2 #include 3 #include 4 #include 5 6
typedef void* (*fun)(void*); 7 8 fun fun1, fun2; 9 10 pthread_mutex_t pmu =
PTHREAD_MUTEX_INITI...
很多Java面试的时候,都会问到有关Java垃圾回收的问题,提到垃圾回收肯定要涉及到JVM内存管理机制,Java语言的执行效率一直被C、C++程序员所嘲笑,其实,事实就是这样,Java在执行效率方面确实很低,一方面,Java语言采用面向对象思想,这也决定了其必然是开发效率高,执行效率低。另一方面,J...
在进入java平台的线程对象之前,基于基础篇(一)的一些问题,我先插入两个基本概念。
[线程的并发与并行]
在单CPU系统中,系统调度在某一时刻只能让一个线程运行,虽然这种调试机制有多种形式(大多数是时间片轮巡为主),但无论如何,要通过不断切换需要运行的线程让其运行的方式就叫并发(concurr.....
vector的标准模板是:template > class
T>而普通模板则是template class
T>,如何创建一个模板能包容以上两个形式通用?http://zhidao.baidu.com/question/412950067.html