- 博客(28)
- 收藏
- 关注
原创 JAVA多线程编程(一)------基础知识
进程与线程进程:是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。(按照这个解释可以理解为进程是一个程序在某个数据集合中的执行过程,它是操作系统动态执行的基本单元) 线程:是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。
2017-11-16 23:35:24 213
原创 JVM虚拟机内存管理
JVM是运行在操作系统之上的一个抽象计算机,运行在JVM上的JAVA程序,隔离了计算机底层的差异,实现了“write once,run anywhere”。
2017-04-30 12:31:16 381
原创 JAVA集合框架
JAVA集合类库与现代大多数数据结构类库一样,也将接口与实现分离,利用这种方式,一旦改变了想法,可以轻松地使用另一种不同的方法实现;
2016-11-12 23:13:38 314
原创 STL2——关联容器
关联容器支持通过键(key)来高效地查找和读取元素。两个基本的关联容器是map和set,map的元素以键-值对形式组织,键用做索引,值表示存储和读取的数据,set包含一个键,并有效地支持关于某个键是否存在的查询。
2015-08-30 20:11:16 763
原创 STL1——顺序容器和顺序容器适配器
容器是容纳特定类型对象的集合,容器的类型分为顺序容器,容器适配器和关联容器,顺序容器将单一类型元素聚集起来成为容器,然后根据位置来存储和访问这些元素。
2015-08-30 14:39:45 2073
原创 Git版本控制
Git是分布式版本控制系统,与SVN类似的集中化版本控制系统相比,集中化版本控制系统虽然能够令多个团队成员一起协作开发,但有时如果中央服务器宕机的话,谁也无法在宕机期间提交更新和协同开发。甚至有时,中央服务器磁盘故障,恰巧又没有做备份或备份没及时,那就可能有丢失数据的风险。
2015-08-20 10:28:43 700
原创 查找总结
在一些(有序的/无序的)数据元素中,通过一定的方法找出与给定关键字相同的数据元素的过程叫做查找。也就是根据给定的某个值,在查找表中确定一个关键字等于给定值的记录或数据元素。
2015-07-07 21:59:24 593
原创 python多线程
python提供了几个用于多线程编程的模块,包括thread,threading和Queue,前两个模块允许程序员创建和管理线程。
2015-07-02 10:47:20 569
转载 最简单的Git教程
从零起步的Git教程,让你无痛苦上手世界上最流行的分布式版本控制系统Git!既然号称史上最浅显易懂的Git教程,那这个教程有什么让你怦然心动的特点呢?首先,本教程绝对面向初学者,没有接触过版本控制概念的读者也可以轻松入门,不必担心起步难度;其次,本教程实用性超强,边学边练,一点也不觉得枯燥。而且,你所学的Git命令是“充分且必要”的,掌握了这些东西,你就可以通过Git轻松地完成你的工作
2015-06-30 19:56:41 519
转载 Python 学习指南
引子经常能在 Python 群里看到很多新人在问一些非常基础的问题, 基本每天都在重复的问这些问题,在这里就总结一下这些问题.首先声明, 本文不打算教会你 Python, 本文力图陈列一些新手容易遇到的问题, 并企图教会你 如何学习 Python, 在遇到问题的时候如何提问.关于版本学习 Python 的第一步需要选择版本, Python 3.x 和 2.x 的
2015-06-26 16:36:32 804
原创 编程之美三——单链表
链表由一系列不必在内存中相连的结构组成,每一个结构均含有表元素和指向包含该元素后继元的结构指针。最后一个元素的后继指针指向NULL。
2015-06-24 19:18:17 443
原创 编程之美二——数组
数组是最简单的一种数据结构,它占据一块连续的内存并按照顺序存储数据,由于其内存是连续的于是可以根据下标在O(1)时间内读写,因此其时间效率很高。由于此优点,一般用数组来实现哈希表。为了解决数组空间效率不高的缺点,又设计实现了多种动态数组比如C++的STL中的vector。在C/C++中数组与指针的关系也比较密切。面试题一:调整数组顺序使奇数位于偶数前面//调整数组顺序使奇数位于偶数
2015-06-16 11:32:29 547
原创 数据结构4.1——树
树(tree) (定义树的一种自然的方式是递归的方法)一棵树是一些节点的集合。这个集合可以是空集;若非空,则一棵树是由称作根(root)的节点r以及0个或多个非空的子树T1,T2......TK组成。 度(Degree):结点拥有的 子树数称为结点的度。 叶子(Leaf)或终端结点:度为0的结点。 非终端结点或分支结点:度不为0的结点。
2015-04-23 16:41:43 545
原创 数据结构3.1——队列
队列队列(queue)是一种先进先出的线性表。它只允许在表的一端进行插入,而在另一端进行删除。允许插入的一端叫做队尾(rear),允许删除的一端则称为对头(front)。队列的基本操作有入队(enqueue),即在表的尾端插入一个元素,出队(dequeue)它是删除在表的开头的元素。
2015-04-22 11:09:51 486
原创 数据结构2.1——栈
栈栈(stack)是限定仅在表尾进行插入或者删除的线性表,表尾端称为栈顶(top),表头端称为栈底(bottom)。栈有时又叫做先进后出的线性表,栈的基本操作有进栈(push)和出栈(pop),前者相当于插入,而后者则是删除最后插入的元素。如图栈有两种存储方法:一种使用数组,另一种是使用单链表。栈的顺序表示typedef struct stack{ int top;
2015-04-22 11:06:47 450
原创 高效率取幂算法
/********运行时间为o(logN)********/#includeint main(){ long int Pow(long int x,int N); int IsEven(int N); long int a; int m; scanf("%ld\n%d",&a,&m); printf("%ld",Pow(a,m)); return 0; getchar();
2014-07-11 09:58:06 571
原创 欧几里德算法(求两个数的最大公约数)
求两个数的最大公约数#includeint main(){ unsigned int Gcd(unsigned int M,unsigned int N); int a,b; printf("please enter two numbers:\n"); scanf("a=%u b=%u",&a,&b); printf("the greatest common divisor is
2014-07-10 15:48:26 957
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人