- 博客(10)
- 收藏
- 关注
原创 贪心算法和动态规划的个人理解
最近通过各个公司的笔试题发现,好多编程题都是贪心算法和动态规划算法。这两个也容易混淆,在网上也看了好多这两种算法的解析,通过这篇文章写下自己对这两种算法的理解。使用动态规划的最大特性是原问题的最优解必须包含子问题的最优解。下面通过一个例子解释:求图的最短路径是解释动态规划最容易的问题。下面是一个多段图:按照贪心算法的思路解决问题可以得到:v1到v2:1到2最短,所以选择2,总长s为2。...
2018-08-16 15:42:32 7302
转载 String.format方法详解
最近在看源码的时候,发现公司在参数名称上还是比较规范严格。之前没有接触过String.format这个方法,在此看了一篇博客觉得还不错,特地引用分享。点击打开链接...
2018-06-06 14:35:09 182
原创 数据库索引的相关问题
为什么要使用数据库索引?(1)在查询的时候,数据库索引可以大大提升读取速度。(2)使用唯一索引的话可以保证表中每一行的独立性。(3)可以加快表和表之间的相互连接。(4)在进行分组和排序的时候,提高速度缺点:索引也占用物理空间,当进行删除和修改的时候,也要进行数据库的维护。索引的分类唯一索引,非唯一索引,聚集索引,非聚集索引,全文索引,主键索引,组合索引。聚集索引:表中记录的物理顺序与键值的索引顺序...
2018-04-21 17:31:07 264
原创 MySQL优化系列
一.语句优化(1)用EXPLAIN查看其sql语句的执行效果,从而优化自己的sql语句。(2)尽量少使用*进行全表扫描,有时会扫描自己不需要的数据。(3)不要在索引上运算或使用函数。(4)尽量使用limit进行对行数的打印。二.对其SQL自身优化1.对其自身的优化,在mysql中有my.cnf文件,对其配置的优化。例如SQL最大连接数量。2.进行拆表优化(1)垂直拆分:把常使用的列和主键放在一张表...
2018-04-21 16:28:49 194
原创 JVM虚拟机以及垃圾回收机制(二)
1.如何判定哪些对象需要回收?在对堆进行对象回收之前,要先判断哪些是无效对象。我们知道,一个对象不被任何对象或变量引用的话,就是无效对象,就需要回收。一般有两种判别方法:(1)引用计数法每个对象都有一个计数器,当这个对象被一个变量或另一个对象引用一次,该计数器加一;若引用失效则计数器减一。当计数器为0时,就认为该对象是无效对象。(2)可达性分析法所有和GC Roots直接或间接关联的对象都是有效对...
2018-03-30 15:29:56 477
原创 JVM虚拟机以及垃圾回收机制(一)
JVM虚拟机栈,程序计数器,本地方法区,堆,方法区。(1)JVM中一共有两个“栈”,一个是本地方法栈,一个是虚拟机栈。两个“栈”的功能相似,都是方法运行过程中的内存模型。并且两个“栈”内部构造相同,都是线程私有。只不过Java虚拟机栈描述的是Java方法过程的内存模型,而本地方法栈是描述Java本地方法运行过程的内存模型。(2)Java虚拟机的内存模型中一共有两个“堆”,一个是原有的堆,一个是方法...
2018-03-30 11:12:00 378
原创 TCP(传输控制协议详解)详解
TCP协议的特点(1)TCP协议是面向连接的运输层协议在数据传输前必须建立连接,数据传输之后释放连接。(2)TCP提供可靠交付的服务所谓可靠是指在传输过程中无重复,无丢失,无错误。但是同时会增加开销。(3)每一条连接都是点对点连接(一对一)(4)面向字节流所谓字节流指的是以传输过程中流入进程和流出进程的字节序列,虽然传输过程中是一个一个数据报,但这只是为了方便传输,之后在目的端重新装配。(5)TC...
2018-03-24 15:38:24 19304 2
原创 浅谈事务
什么是事务?事务就是一组具有原子性的操作。这组操作要么全部执行,要么全部不执行。事务的四大特性(ACID)原子性(Atomicity):原子性指的是事务是一个不可分割的操作,要么全部执行,要么全部不执行。一致性(Consistency): 事务执行前后,数据库的完整性约束没有被破坏。隔离性(Isolation):每个事务都是相互独立的,一组事务不会看到另一组正在执行的事务数据。持久性(Durab...
2018-03-24 11:14:45 186
原创 Spring的高级配置(一)
环境与profile在开发软件的时候,有一个很大的挑战就是将应用程序从一个环境迁移到另外一个环境。在开发阶段中,某些环境相关做法可能并不适合迁移到生产环境中,甚至即便迁移过去也无法正常工作。数据库配置,加密算法以及外部系统的集成是跨环境部署时会发生变化的几个典型例子。比如,考虑一下数据库配置。在开发环境中,我们可能会使用嵌入式数据库,并预先加载测试数据。例如,在Spring配置类中,我们可能会在一个
2018-01-03 20:14:45 214
原创 Spring--装配Bean
Spring容器负责创建应用程序中的Bean并通过DI来协调这些对象之间的关系。当描述bean如何进行装配时,Spring具有非常大的灵活性,它提供了三种主要的装配机制: 1.在XML中进行显式配置; 2.在Java中进行显式配置; 3.隐式的bean发现机制和自动装配。
2017-12-19 16:30:59 168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人