- 军军小站|张军博客
搜索到与相关的文章
编程技术

【查找结构 2】二叉查找树 [BST]

当所有的静态查找结构添加和删除一个数据的时候,整个结构都需要重建。这对于常常需要在查找过程中动态改变数据而言,是灾难性的。因此人们就必须去寻找高效的动态查找结构,我们在这讨论一个非常常用的动态查找树——二叉查找树。二叉查找树的特点下面的图就是两棵二叉查找树,我们可以总结一下他的特点:(1)若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值(2)若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值(3)它的左、右子树也分别为二叉查找树我们中

系统 2019-08-29 21:59:55 1882

编程技术

JVM垃圾回收机制总结(4) :新一代的垃圾回收算法

全文转载:http://pengjiaheng.iteye.com/blog/548472作者:和你在一起(fromJavaEye)垃圾回收的瓶颈传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限。但是他无法解决的一个问题,就是FullGC所带来的应用暂停。在一些对实时性要求很高的应用场景下,GC暂停所带来的请求堆积和请求失败是无法接受的。这类应用可能要求请求的返回时间在几百甚至几十毫秒以内,如果分代垃

系统 2019-08-29 21:59:33 1882

编程技术

《深入浅出Hibernate》读书笔记(1)——实体对象

《深入浅出Hibernate》读书笔记(1)——实体对象生命周期最近正在研读《深入浅出Hibernate》一书,前面写的随笔有些也是读该书的笔记,只是未做归类,从这篇开始,我将把相关的内容都整理成一个系列的读书笔记。今天这篇是有关实体对象的生命周期。我刚开始接触Hibernate的时候,只是简单的把它当做一个API工具,直到后来看到有关VO和PO的内容时,才意识到Hibernate不仅仅是一个O/RMapping的API工具,它还是一个容器。它可以帮你管理

系统 2019-08-29 21:58:52 1882

编程技术

笔者带你剖析Apache Commons DbUtils 1.6

《笔者带你剖析ApacheCommonsDbUtils1.6》前言关于Apache的DbUtils中间件或许了解的人并不多,大部分开发人员在生成环境中更多的是依靠Hibernate、Ibatis、SpringJDBC、JPA等大厂提供的持久层技术解决方案,或者是企业内部自己研发的持久层技术。但无论如何,使用这些技术的初衷和本质都是为了能够减少企业开发成本,提高生产效率,降低耦合。放眼企业级项目,Hibernate等ORM产品是首选,而互联网领域,大部分开发

系统 2019-08-12 09:29:33 1882

Python

python实现对服务器脚本敏感信息的加密解密功能

背景在实际项目实施中,会编写很多在服务器执行的作业脚本。程序中凡是涉及到数据库链接、操作系统用户链接、IP地址、主机名称的内容都是敏感信息。在纯内网系统中往因为开发时间紧迫,往往都直接将这些敏感信息明文方式写在脚本中了。稍微规范一点的,创建一个通用的config文件,将所有这类敏感信息记录在这个文件中,脚本以读取文件方式获取这些信息。这种方式的好处是脚本不用在应用迁移、灾备部署的时候再起不同的版本,尤其是大数据平台作业运行的脚本,如果是需要做灾备集群,这种

系统 2019-09-27 17:57:49 1881

Python

python里运用私有属性和方法总结

如何在PYTHON里运用私有属性和方法classFile:def__init__(self,name):self.name=nameself.code="ABCDEF"file_A=File("file_A")#假设我们有一个类,叫做文件类,设置一个对象file_A。file_A.code#如果直接调用属性,是可以看到属性里面有什么,但是如果这是个机密的密码不能公布,是不能这么处理的。classFile:def__init__(self,name):sel

系统 2019-09-27 17:57:30 1881

Python

python线程中的同步问题及解决方法

多线程开发可能遇到的问题假设两个线程t1和t2都要对num=0进行增1运算,t1和t2都各对num修改1000000次,num的最终的结果应该为2000000。但是由于是多线程访问,有可能出现下面情况:fromthreadingimportThreadimporttimenum=0deftest1():globalnumforiinrange(1000000):num+=1print("--test1--num=%d"%num)deftest2():glo

系统 2019-09-27 17:57:16 1881

Python

Python爬虫入门【13】:All IT eBooks多线程爬取

AllITeBooks多线程爬取-写在前面对一个爬虫爱好者来说,或多或少都有这么一点点的收集癖~发现好的图片,发现好的书籍,发现各种能存放在电脑上的东西,都喜欢把它批量的爬取下来。然后放着,是的,就这么放着.......然后慢慢的遗忘掉.....AllITeBooks多线程爬取-爬虫分析打开网址http://www.allitebooks.com/发现特别清晰的小页面,一看就好爬在点击一本图书进入,发现下载的小链接也很明显的展示在了我们面前,小激动一把,这

系统 2019-09-27 17:56:53 1881

Python

Python学习笔记 汇总篇(更新中)

第一篇markdown编辑器001Markdown基本语法第二篇Python集成环境和解释器002Python解释器安装003Python解释器源修改004pip的使用005Python的IDE之Pycharm的使用006Python的IDE之Jupyter的使用第三篇Python基础007常量008变量009Python变量内存管理010各类赋值方式011注释012数据类型基础013数据类型:数字类型014数据类型:字符串类型015数据类型:列表类型01

系统 2019-09-27 17:56:43 1881

Python

Python中的上下文管理器

Python中的上下文管理器,实际上就是实现了上下文管理协议的对象。在Python中打开文件的时候,我们需要确保文件被使用完毕之后,对其进行关闭操作——调用文件对象的close()方法。如果不使用上下文管理器,经典的处理方式就是将close()方法的调用放在一个finally语句中:f=open("www.log")try:print("dosomethingwithfile")finally:f.close()这里finally的唯一作用就是确保文件对象

系统 2019-09-27 17:56:31 1881