上一篇说了虚拟机的内存模型,在说到堆内存的时候我们提到了,堆内存是Java内存中区域最大的一部分,而且垃圾回收器主要就是回收这部分的内容。那么这篇就来介绍一下垃圾回收器的原理以及回收的算法。Java中的垃圾回收器(GC)是Java中比较有特色的一点,不需要我们手动的去管理一个对象,不想C++中的构造函数和析构函数一样,需要程序猿自己去手动的管理,很容易造成内存泄露的问题。当然如果学过OC语言的话,...
分类:
编程语言 时间:
2014-11-02 18:16:12
阅读次数:
242
花了四天的时间用python写了个简单的爬虫程序。整个过程分为两个部分:工具的安装和程序的实现本文并没有讲程序的详细实现遇到的问题,而是对着手前一些前期的准备第一部分(工具的安装)开发工具的下载安装MySql + MySQLWorkbench +PyCharm (可參考)第二部分(程序实现部分)ma...
分类:
编程语言 时间:
2014-11-02 18:09:31
阅读次数:
230
好久没写博客了,前段时间忙于做项目,耽误了些时间,今天开始继续写起~今天来讲下关于Socket通信的简单应用,关于什么是Socket以及一些网络编程的基础,这里就不提了,只记录最简单易懂实用的东西。1、首先先来看下基于TCP协议Socket服务端和客户端的通信模型:Socket通信步骤:(简单分为4...
分类:
编程语言 时间:
2014-11-02 18:07:24
阅读次数:
251
今天看到酷壳推荐的国外编程LeetCode算法编程网站,上面目前有154道算法题,感觉很有意思,平常工作也比较忙,现在很少有时间来锻炼算法相关的东西,有空的时候静下心来,温习下基础,活跃下自已的思路,也是有必要的。下午先做了个简单的题,后面会陆续补充其它的题目。1、题目Given a non-neg...
分类:
编程语言 时间:
2014-11-02 18:05:20
阅读次数:
180
1. 问题 在C++中,在进行输入输出操作时,我们首先会想到用cout, cin这两个库操作语句来实现,比如 cout > s; cout,cin分别是库ostream, istream里的类对象 如果想要cout,cin来输出或输入一个类对象,这样的需求它能满足吗?很显然,原来的cou...
分类:
编程语言 时间:
2014-11-02 18:04:23
阅读次数:
162
JavaScript 是一款强大的广泛运用于现代Web站点及应用的脚本语言。作为一个技艺精湛的 Web 开发者,掌握JavaScript可以增强用户的使用体验,提供交互及富客户端等功能。尽管JavaScript 的语法非常简单,但对于写程序而言仍然是困难重重,就是因为它的运行环境:基于Web浏览器。...
分类:
编程语言 时间:
2014-11-02 18:03:31
阅读次数:
196
(1) 为何map和set的插入删除效率比用其他序列容器高?因为map和set的内部数据结构是红黑树,它的插入和删除不需做内存的拷贝和移动。(红黑树的插入和删除是log(n)的)。(2)为何每次insert之后,以前保存的iterator不会失效?iterator这里就相当于指向节点的指针,内存没有...
分类:
编程语言 时间:
2014-11-02 17:57:40
阅读次数:
270
三个数从小到大排序描述现在要写一个程序,实现给三个数排序的功能输入输入三个正整数输出给输入的三个正整数排序样例输入20 7 33样例输出7 20 33 #include using namespace std;int main(){ int arr[3]; for(int i=0 ;i>...
分类:
编程语言 时间:
2014-11-02 17:59:16
阅读次数:
120
ACM,算法描述最近Topcoder的XD遇到了一个难题,倘若一个数的三次方的后三位是111,他把这样的数称为小光棍数。他已经知道了第一个小光棍数是471,471的三次方是104487111,现在他想知道第m(m#include using namespace std;int main(){ ...
分类:
编程语言 时间:
2014-11-02 17:57:51
阅读次数:
179
python 3.x 不再提供raw_input(), 改为使用input(), print 改为 print(),print 无括号形式不能再使用.>>> raw_input('input name:');Traceback (most recent call last): File "", li...
分类:
编程语言 时间:
2014-11-02 17:49:06
阅读次数:
217
概述:设置两个数组/列表,列表a是[1,2,3],列表b是[‘a‘,‘b‘,‘c‘],把他们一对一对打印出来,但不打印“3:c”这对。 python版: ‘‘‘
Created?on?2014-11-2
@author:?Administrator
‘‘‘
class?MyArray:
???...
分类:
编程语言 时间:
2014-11-02 16:43:53
阅读次数:
170
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="en"><head> <metahttp-equiv="Content-Type"content="text/html;charset=UTF..
分类:
编程语言 时间:
2014-11-02 16:40:46
阅读次数:
217
javascript 对象的那些事...
分类:
编程语言 时间:
2014-11-02 16:37:49
阅读次数:
125
上一篇文章中,我们宏观介绍了多线程的背景,今天我们上一些干货。
在展开讲解多线程之前,我们需要明白进程与线程之间的关系。
进程与线程
一个关于进程和线程的比喻很贴切:一个进程就像是工厂的一个车间,代表CPU所能处理的单个任务,任一时刻,CPU总是运行一个进程,其他进程处于非运行状态。而车间的工人,就好比线程,一个进程可以包含多个线程。
创建线程
创建线程的方式有多种,可以直接继承Thread类,也可以实现Runnable接口实现多线程。我们可以直接new 一个Thread或者将一个Runnable传入...
分类:
编程语言 时间:
2014-11-02 16:37:52
阅读次数:
190
指南文档的这个部分涵盖了Spring框架对表现层(特别是基于We...
分类:
编程语言 时间:
2014-11-02 16:38:20
阅读次数:
292
以前做研究写论文,总爱用高性能这一词来形容所提的算法,有点王婆卖瓜的感觉。当然,所研究的算法的性能是不错的,但是否是高性能,自己不敢说一定。最近翻读Vazirani的《Approximate Algorithms》一书,仔细重读了他的前言,发现他给出了高性能算法的一个定义,即高性能算法的解与最有解的误差只有2%或5%。2%的误差要求可能有点高,但5%应该还是不错的。如果以此为衡量,先前所做的算法少...
分类:
编程语言 时间:
2014-11-02 16:35:42
阅读次数:
176
List、Set和Map三个接口的区别,三个接口的实现类的优缺点的比较,如果你没有以前没有注意到这些,今天我们一起探讨。...
分类:
编程语言 时间:
2014-11-02 16:36:09
阅读次数:
192