自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 Python2中input出现的name “xxx” is not defined问题原因及解决办法

# coding=UTF-8'''Created on 2017年10月22日@author: Dyna'''str_1 = input("Enter a string:")str_2 = input("Enter another string:")print ("str_1 is:"+str_1+" str_2 is:"+str_2)print "str_1 is {} ,s

2017-10-22 15:16:55 24536

原创 Python函数参数中*与**的用法和区别

#可变参数def print_paras(fpara,*nums,**words): print ("fpara:"+str(fpara)) print ("nums:"+str(nums)) print ("words:"+str(words))print print_paras("Hello",1,3,5,7,word="pyhton",another_word=

2017-10-22 13:00:30 2960

原创 Mac OS下,终端下使用pip install *进行到导包后,Eclipse中仍然出现Unresolved错误

错误原因:eclipse中找不到已经下载的包解决方法:1、在终端使用命令查看自己的Python版本,打开Eclipse中的偏好设置,打开Python Interpreter。2、选择右侧的New Folder,将pip install *的现在路径放入其中。一般情况下如下图所示

2017-10-20 10:30:43 708

原创 Eclipse安装PyDev插件后,preference中不显示Pydev问题原因及解决办法

最近在Eclispe中安装PyDev插件后,preference中不显示PyDev,这个问题纠结了蛮久,上网查阅了一些博客和解决方法,均没有得到很好的解决。PyDev安装教程见http://www.cnblogs.com/Bonker/p/3584707.html,但是按照这种方法安装后preference中不显示PyDev,后来找到了原因。原因:这个插件地址是最新的,而Eclipse是依赖于

2017-10-19 21:26:21 1216

原创 在线安装Eclipse插件时,出现错误

在安装Eclipse插件时,总是出现An error occurred while collecting items to be installedsession context was:(profile=epp.package.jee, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, act

2017-10-19 20:23:51 3839

原创 Java堆外内存及导致的溢出错误

除了Java堆和永生代之外,还有一些区域会占用较多的内存,而这些内存总和可能受到操作系统进程最大的内存限制。比如,一个服务器内存2G,其中1.6G分配给Java堆,另外的0.4G分配给操作系统和下面的区域,那么0.4G很可能不够用。例如当Direct Memory占用过多的内存时,虚拟机虽然会对Direct Memory进行回收,但是却不像新生代,老年代一样,发现空间不足了就通知收集器进行垃圾回收

2017-05-11 10:54:25 2958

原创 哈夫曼树

要搞清楚哈夫曼树的定义和原理,先要搞清楚几个定义:      1、路径长度:从树中一个结点到另一个结点之间的分支构成两个结点之间的路径,路径上的分支数目称为路径长度。      2、树的路径长度就是从根结点到每一个结点的路径长度之和。      如果考虑到带权的结点,结点的带权的路径长度为从该结点到树根之间的路径长度与结点上权的乘积。树的带权路径长度为树中所有叶子结点的带权路径长度之和

2017-04-10 20:17:55 437

原创 树、森林与二叉树的转换

将树转换为二叉树的步骤:1、加线。在所有兄弟结点之间加一条连线。2、去线。对树中的每一个结点,只保留它与第一个孩子结点的连线,删除它与其他孩子结点之间的连线。3、层次调整。以树的根结点为轴心,将整棵树顺时针旋转一定的角度,使之结构层次分明。注意:第一个孩子是二叉树结点的左孩子,兄弟转换过来的孩子是结点的右孩子。森林转换为二叉树:森林是有若干颗树构成的。完全可以理解为:森林中

2017-04-10 11:04:41 703

原创 树(JAVA描述)

在线性结构中数据元素之间的逻辑关系为一对一的线性关系,而在树形结构中,数据元素之间具有一对多的逻辑关系,它反应了数据元素之间的层次关系,和一个数据元素可以有多个后继但只能有一个前驱的特点。       树:有n个节点所构成的有限集合,当n=0时,称为空树。当n>0时,n个结点满足以下条件:1)有且仅有一个称为根的节点。2)其余结点可分为m个互不相交的有限集合,且每一个集合又构成一棵树,这棵树称

2017-04-05 15:16:41 657

原创 队列(JAVA描述)

队列是一种特殊的线性表,其特性体现在队列只允许在表尾插入数据元素,在表头删除元素,所以队列是一种操作受限的线性表,具有先进先出的特点。允许进行插入的一端称为队尾,允许进行删除的一端称为队首。队列也分为顺序和链式两种存储结构。如下为队列接口的代码:public interface IQueue { public void clear(); //清空队列的操作 public

2017-03-30 20:28:38 1533

原创 栈(JAVA描述)

栈是一种特殊的线性表,栈中的数据元素以及数据元素间的逻辑关系与线性表相同,两者区别在于:线性表的插入和删除操作可以在表的任意位置进行,而栈的插入和删除操作只允许在表的尾端进行。其中,允许进行插入删除操作的叫做栈顶、另一端叫做栈底。因此,栈又称为先进后出的线性表(LIFO)。因为栈是一种特殊的线性表,所以根据存储结构也可以把栈分为顺序(顺序存储结构)栈和链(链式存储结构)栈。定义栈接口代码如下:

2017-03-29 20:53:15 700

原创 线性表(JAVA描述)

线性表是一种基本的数据结构,线性表在计算机中可以用顺序存储和链式存储两种存储结构来表示。其中,用顺序存储结构表示的线性表称为顺序表,用链式存储结构表示的称为链表。其中,链表又分为单链表、双向链表、循环链表。线性表结构简单,其长度可以动态的增长或减少、可以对线性表中任何数据元素进行访问、数据元素的插入和删除操作可以在线性表中的任何位置进行、求线性表中指定元素的前驱和后继。因此我们可以构造一个接口来:

2017-03-29 16:15:28 644

原创 JSP的4种基本语法

1、JSP注释: JSP注释的格式:   注:JSP注释不会发送到Client,即通过浏览器查看网页源代码是查看不到JSP注释的,但可以看到HTML注释。                        HTML注释的格式:2、JSP声明:JSP声明用于声明变量和方法。貌似在JSP声明方法似乎不需要定义类就可以直接定义方法。实际上,JSP页面的生命部分将转换成对应Servlet的成员变量和成

2017-03-27 15:03:32 823

原创 Java中内存分配和回收策略、新生代、老年代

Java中对于垃圾回收的策略有多种,而目前商业虚拟机的垃圾收集都采用“分代收集”,这种算法是根据对象存活周期的不同将内存分为几块,一般是将Java堆分为新生代和老年代,根据各个年代的特点采用较适合的收集算法。       新生代中采用的收集算法:复制算法。算法的思想是将可用内存分为大小相等的两块,每次使用其中一块,当一块内存用完了,就将还存活的对象分到另一块。然后把使用过的内存空间一次进行清理

2017-03-17 10:44:40 5963

原创 Java中对象的死亡

Java中是通过可达性分析来判定对象是否存活的。这个算法的思路是通过一系列的称为”GC Roots“的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连时,则证明这个对象是不可用的。JAVA中可作为GC Roots的对象包括下面几种:1、虚拟机栈中引用的对象  2、方法区中类静态属性引用的对象  3、方法去中常量引用的对象 4、本地方

2017-03-16 22:04:14 1044

原创 JAVA中的强引用、软引用、弱引用、虚引用

Java中关于引用的定义为:如果reference类型的数据中存储的数值代表的是另一块内存的起始地址,就称这块内存代表着一个引用。这种定义很纯粹,但是太过狭隘,一个对象在这种定义下只有被引用或者没有被引用两种状态,对于如何描述一些“食之无味,弃之可惜”的对象就显得无能为力。我们希望可以描述这么一类对象:当内存足够时,可以保留在内存中;如果内存空间在进行垃圾回收后还是很紧张,那么就把他抛弃。JDK

2017-03-16 20:46:21 524

原创 JAVA中对象的创建、对象的内存布局、对象的访问定位

对象的创建:在语言层面,创建对象通常仅仅需要一个new关键字即可创建一个对象。而在虚拟机中,对象的创建是一个复杂的过程。当JVM遇到一个new指令的时候,首先将去检查这个指令的参数能否在常量池中找到 一个类的符号引用,并且检查这个符号引用所代表的类是否已经被加载、解析、初始化过。如果没有,将先进行类加载的过程。在类加载检查通过后,虚拟机就要为新生对象分配内存,所需内存的大小在类加载完成后便可以完全

2017-03-15 21:55:38 659

原创 Java内存区域的划分

JVM在执行Java程序时会讲它所管理的内存划分为若干个数据区域。目前比较流行的划分方式是将内存区域划分为堆(Heap)内存和栈(Stack)内存。这种方法的划分说明与对象分配关系最为密切的内存是很多程序员最关注的部分,实际上JVM在执行Java程序时,内存区域的划分远远比这个复杂。根据《JAVA虚拟机规范》的规定,JVM所管理的内存将分为以下几个区域。       1、程序计数器:所占内存很

2017-03-15 14:03:30 530

原创 多线程中的BlockingQueue(阻塞队列)

JAVA5中提供了一个BlockingQueue接口,虽然它是Queue的子接口,但它的主要作用并不是容器,而是作为线程同步的工具。多线程的环境中,通过队列可以实现数据共享,比如生产者消费者模型中,通过队列可以实现数据共享。但是如果生产者的生产速度和消费者的消费速度不匹配的话,很容易造成队列满了,生产者无法把数据放进去或者队列没有数据,消费者无法从中获得数据。BlockingQueue的特征便是:

2017-03-13 19:10:48 908

原创 JAVA中多线程同步的方法

当多个线程访问同一个资源时,很有可能会出现线程安全的问题。比如,多个线程对一个数据进行修改时,会导致某着线程对数据的修改丢失。而同步机制就是为了解决这种问题。       JAVA中,有三种实现同步机制的方法:      1、synchronized关键字:JAVA中,每个对象都有一个对象锁预知相关联,该锁表明对象在任何时候只允许被一个线程拥有,当一个线程调用对象的一段synchroniz

2017-03-13 14:12:52 484

原创 JAVA中控制线程的方法

JAVA中提供了一些方法用来控制线程的执行。1、join方法:由Thread提供,作用:让一个线程等待另一个线程完成的方法。a线程中调用b线程的join方法,那么a线程将被阻塞,直到b线程执行完毕。public class JoinThread extends Thread{ public JoinThread(String name){ super(name); } p

2017-03-11 18:18:12 660

原创 线程的生命周期和状态

线程的五个状态:新建、就绪、运行、阻塞、死亡。新建状态:当使用new来新建一个线程时、该线程就处于新建状态,和其它JAVA中的对象没有区别,JVM为其分配内存。就绪状态:当线程调用了start方法后,该线程就处于就绪状态。JVM为其创建方法调用栈和程序计数器,处于这个状态的线程并没有开始运行,只是表示这个线程可以运行了,至于什么时候运行,由JVM中的线程调度决定。运行状态:如果处于就绪

2017-03-11 15:38:31 496

原创 多线程中run()和start()方法的区别

通常,系统通过调用线程类中的start()方法来启动一个线程,此时该线程处于就绪状态,而不是运行状态,这意味着这个线程可以被JVM来调度执行。在调度过程中,JVM通过调用线程类的run()方法来完成实际的操作,当run()方法结束时,此线程就会终止。如果直接调用线程类的run()方法,这就是普通的函数调用。此时,程序中仍只有主线程一个线程,而采用start()来调用,则不止一个线程,不仅有主线

2017-03-10 16:22:07 1169

原创 JAVA实现多线程的方法

并发编程使我们可以将程序划分为多个分离的、独立运行的任务。通过多线程机制,这些独立任务中的没一个都将由执行线程来驱动。要搞清这些,就先搞清什么叫线程?所谓线程,就是进程中的一个单一的顺序控制流。多线程的实现一般有三种方法:1、继承Thread类,重写run()方法。Thread本质上是Runnable接口的一个实例,它代表一个线程的实例,并且启动线程的唯一方法就是通过Thread类的s

2017-03-10 09:12:40 388

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除