22 22
3年前
一文看懂二叉树的概念和原理
系列文章推荐阅读0.前言到目前为止,我们已经讲述了、、、四种数据结构,它们有一个共同的特点,就是它们都是线性表,换句话来说,它们都是线性结构,像一根绳子一样。在文章已经介绍过线性表的定义了,即由若干元素按照线性结构(一对一的关系)组成的有限序列。关键词是一对一的关系。显然,在复杂的现实社会中,这种一对一的关系是不能较好的满足我们的需求的。比如
Wesley13 Wesley13
3年前
java实现判断两个二叉树是否相同
1、定义树节点类:节点值、左节点、右节点、构造器2、先判断树是否为空的情况3、树不为空时,判断节点所指的值是否相等,若相等,则递归判断节点的左右节点是否相同,相同则返回true/\\ \Definitionforbinarytree \publicclassTreeNode{ \    intval
Easter79 Easter79
3年前
surprise库官方文档分析(二):使用预测算法
1、使用预测算法Surprise提供了一堆内置算法。所有算法都派生自AlgoBase(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fsurprise.readthedocs.io%2Fen%2Fstable%2Falgobase.html%23surprise.predictio
“堆内存持续占用高 且 ygc回收效果不佳” 排查处理实践
自建的两套工具,运行一段时间后均出现内存占用高触发报警,频繁younggc且效果不佳。曾经尝试多次解决,因各种原因耽搁,最近下定决心处理此问题。
Stella981 Stella981
3年前
CentOS 6 使用 OpenLDAP 认证
OpenLDAP简介OpenLDAP简介网上一大堆这里就不做介绍,可参考:http://baike.baidu.com/view/308683.htm(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fbaike.baidu.com%2Fview%2F3086
Stella981 Stella981
3年前
Spring mvc的参数究竟是如何绑定的
在使用Springmvc的时候我们会被他优雅的参数绑定所吸引,再也不用写那么多getParameter也不用像struts2中写一堆get、set给开发者带来了很大的便利。/注册/@RequestMapping(value"/register",methodRequestMethod.PO
Wesley13 Wesley13
3年前
Java内存溢出(OOM)异常完全指南
这也许是目前最为完整的JavaOOM异常的解决指南。1、java.lang.OutOfMemoryError:JavaheapspaceJava应用程序在启动时会指定所需要的内存大小,它被分割成两个不同的区域:Heapspace(堆空间)和Permgen(永久代):!(https://oscimg.
Wesley13 Wesley13
3年前
Java 14 虚拟机垃圾回收调优指南
!(https://oscimg.oschina.net/oscnet/5645c383190d3d6f24ada7046e6fd885a3b.jpg)优化目标与策略(Ergonomics)垃圾收集器、堆和运行时编译器默认选择G1(GarbageFirst)收集器
Wesley13 Wesley13
3年前
UDT协议实现分析——数据发送控制
在前文(http://my.oschina.net/wolfcs/blog/506021)中,我们有看到,数据发送的过程,大体是发送者CUDT将要发送的数据放进它的CSndBufferm\_pSndBuffer,并将它自己添加进它的CSndQueuem\_pSndQueue的CSndUListm\_pSndUList的堆里,后面CSndQueue
Wesley13 Wesley13
3年前
.NET陷阱之五:奇怪的OutOfMemoryException——大对象堆引起的问题与对策
我们在开发过程中曾经遇到过一个奇怪的问题:当软件加载了很多比较大规模的数据后,会偶尔出现OutOfMemoryException异常,但通过内存检查工具却发现还有很多可用内存。于是我们怀疑是可用内存总量充足,但却没有足够的连续内存了——也就是说存在很多未分配的内存空隙。但不是说.NET运行时的垃圾收集器会压缩使用中的内存,从而使已经释放的内存空隙连成一片吗?