码迷,mamicode.com
首页 > 编程语言
Java多线程编程7--拾遗增补--线程组
可以把线程归属到某一个线程组中,线程组中可以有线程对象,也可以有线程组,组中还可以有线程。这样的组织结构有些类似于树的形式,如图所示。     线程组的作用是,可以批量的管理线程或线程组对象,有效地对线程或线程组对象进行组织。 1、线程对象关联线程组:1级关联     所谓的1级关联就是父对象中有子对象,但并不创建子孙对象。这种情况经常出现在开发中,比如创建一些线程时,为了有效地...
分类:编程语言   时间:2016-05-12 22:00:18    阅读次数:239
C++ Primer 学习笔记_83_模板与泛型编程 -一个泛型句柄类
模板与泛型编程 --一个泛型句柄类 引言: 【小心地雷】 这个例子体现了C++相当复杂的语言应用,理解它需要很好地理解继承和模板。在熟悉了这些特性之后再研究这个例子也许会帮助。另一方面,这个例子还能很好地测试你对这些特性的理解程度。 前面示例的Sales_item和Query两个类的使用计数的实现是相同的。这类问题非常适合于泛型编程:可...
分类:编程语言   时间:2016-05-12 22:01:13    阅读次数:256
C++ Primer 学习笔记_79_模板与泛型编程 -模板编译模型
模板与泛型编程 --模板编译模型 引言: 当编译器看到模板定义的时候,它不立即产生代码。只有在用到模板时,如果调用了函数模板或定义了模板的对象的时候,编译器才产生特定类型的模板实例。 一般而言,当调用函数时[不是模板],编译器只需看到函数的声明。类似的,定义类类型的对象时,类定义必须可用,但成员函数的定义不是必须存在的。因此,应该将类定义和函数声明放在头文件中,而普通函数和...
分类:编程语言   时间:2016-05-12 22:00:51    阅读次数:185
C++ Primer 学习笔记_76_模板与泛型编程 -模板定义[续]
模板与泛型编程 --模板定义[续] 四、模板类型形参 类型形参由关键字class或 typename后接说明符构成。在模板形参表中,这两个关键字具有相同的含义,都指出后面所接的名字表示一个类型。 模板类型形参可作为类型说明符在模板中的任何地方,与内置类型说明符或类类型说明符的使用方式完全相同。具体而言,它可以用于指定返回类型或函数形参类型,以及在函数体中用于变量声明或强制类...
分类:编程语言   时间:2016-05-12 21:58:10    阅读次数:229
算法学习(十一)数组中出现次数超过长度一半的数
数组中出现次数超过数组长度一半的 数字题目描述: 给定 一个数组,找到数组中出现次数超过数组长度一半的数字,如数组 a[]= {0,1,2,1,1},输出为1 分析: 1,可以使用伴随数组b,遍历数组a,将值作为数组b的下标,将次数作为值,然后遍历数组b,找到次数超过一半的值,然后输出。时间复杂度为O(N),不过要增加空间复杂度。 2,我们可以先对数组进行排序,因为某个数字出现次数超过一半,...
分类:编程语言   时间:2016-05-12 21:58:20    阅读次数:203
C++ Primer 学习笔记_80_模板与泛型编程 -类模板成员
模板与泛型编程 --类模板成员 引言: 这一节我们介绍怎样实现前面提到的Queue模板类。 标准库将queue实现为其他容器之上的适配器。为了强调在使用低级数据结构中设计的编程要点,我们将Queue实现为链表。实际上,在我们的实现中使用标准库可能是个更好的决定!!-_-。 1、Queue的实现策略 如图所示,我们实现两个类: 1)Queue...
分类:编程语言   时间:2016-05-12 21:58:03    阅读次数:285
C++ Primer 学习笔记_77_模板与泛型编程 -实例化
模板与泛型编程 --实例化 引言: 模板是一个蓝图,它本身不是类或函数。编译器使用模板产生指定的类或函数的特定版本。产生模板的特定类型实例的过程称为实例化。 模板在使用时将进行实例化,类模板在引用实际模板类型时实例化,函数模板在调用它或用它对函数指针进行初始化或赋值时实例化。 1、类的实例化 当编写Queueqi时,编译器自动创建...
分类:编程语言   时间:2016-05-12 21:57:37    阅读次数:302
共同学习Java源代码--数据结构--AbstractList抽象类(三)
public boolean equals(Object o) {         if (o == this)             return true;         if (!(o instanceof List))             return false;         ListIterator e1 = listIterator();       ...
分类:编程语言   时间:2016-05-12 21:58:34    阅读次数:187
springMVC两种方式实现多文件上传及效率比较
springMVC实现多文件上传的方式有两种,一种是我们经常使用的以字节流的方式进行文件上传,另外一种是使用springMVC包装好的解析器进行上传。这两种方式对于实现多文件上传效率上却有着很大的差距,下面我们通过实例来看一下这两种方式的实现方式,同时比较一下在效率上到底存在着多大的差距。 1.下载相关jar包。需要引入的jar出了springMVC的jar包外,还需要引入com.sprin...
分类:编程语言   时间:2016-05-12 21:57:16    阅读次数:346
C++ Primer 学习笔记_84_模板与泛型编程 -模板特化
模板与泛型编程 --模板特化 引言: 我们并不总是能够写出对所有可能被实例化的类型都最合适的模板。某些情况下,通用模板定义对于某个类型可能是完全错误的,通用模板定义也许不能编译或者做错误的事情;另外一些情况下,可以利用关于类型的一些特殊知识,编写比从模板实例化来的函数更有效率的函数。 compare函数和 Queue类都是这一问题的好例子:与C风格字符串一起...
分类:编程语言   时间:2016-05-12 21:57:56    阅读次数:246
[C++]封装排序二叉树&随机数生成(c++11)
封装排序二叉树&随机数生成(c++11)本文,我尝试着把排序二叉树封装为一个模板类,并且用C++11给出的随机数生成函数来对这个类进行测试。排序二叉树封装 这个二叉树的特征是,左子数的值肯定比父节点小,右子树的值肯定比父节点的大。要求大家按照这个结构特征去构建二叉树,最后中序遍历输出就是我们要求的升序输出。 我们可以根据具体的要求来完成对排序二叉树的构建,可以用一个bool函数来区别不同排序顺序...
分类:编程语言   时间:2016-05-12 21:56:30    阅读次数:493
Java 文件字节字符数据转换
package io; //: io/BufferToText.java //Converting text to and from ByteBuffers import java.nio.*; import java.nio.channels.*; import java.nio.charset.*; import java.io.*; /* * 转换数据: * 缓冲器容纳的是普通的字节,为...
分类:编程语言   时间:2016-05-12 21:53:37    阅读次数:280
java自动拆装箱总结
java中有8中基本的数据类型,这八种基本的数据类型都有对应的封装类型,下面是对应关系:int——Integerfloat——Floatdouble——Doublebyte——Bytelong——Longchar——Characterboolean——Booleanshort——Short基本数据类型和它对应的封装类型之间可以相互转换,从基本数据类型到封装类型叫做装箱,从封装类型到基本数据类型叫拆箱...
分类:编程语言   时间:2016-05-12 21:55:23    阅读次数:327
java可变参数方法重载的注意事项
1.可变参数方法与数组参数方法重载 public class MethodParams{ //带可变参数的方法 public void hello(String ...params) { System.out.println("执行带可变参数的方法,参数个数为:" + params.length); } //带数组参数的方法 public void hello(String[] params) ...
分类:编程语言   时间:2016-05-12 21:54:54    阅读次数:288
【剑指offer】旋转数组的最小值
题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减序列的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 输入描述 一个非递减序列的一个旋转数组 输出描述 输出旋转数组的最小元素 题目分析   原数组最小的值必然是第一个,旋转后数组是...
分类:编程语言   时间:2016-05-12 21:52:12    阅读次数:117
JVM垃圾回收机制与算法
JVM内存由几个部分组成:堆、方法区、栈、程序计数器、本地方法栈     JVM垃圾回收仅针对公共内存区域,即:堆和方法区进行,因为只有这两个区域在运行时才能知道需要创建些对象,其内存分配和回收都是动态的。 一、垃圾回收策略     1.1分代管理         将堆和方法区按照对象不同年龄进行分代:           (Young Generation and Old Gene...
分类:编程语言   时间:2016-05-12 21:51:40    阅读次数:256
链表——(循环和递归)合并两个排序链表
题目:合并两个递增排序链表,使新链表仍然按照递增排序。 方法一: 基于递归的方法,链表first和链表second各有m和n个结点,新链表的头结点为两个链表中头结点较小 的一个,当找到该头结点时(假设为first的头结点),仍需对first的m-1个结点和second的n个结点合并。 可以看出,子问题和原问题相同,因此可以利用递归解决。 代码如下: /** * Definit...
分类:编程语言   时间:2016-05-12 21:51:18    阅读次数:173
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!