- 博客(6)
- 收藏
- 关注
原创 SpringBoot下载文件
文件下载在使用Spring的文件下载和上传功能时,可以直接向前端返回ResponseEntity<byte[]>类型的数据。功能代码如下: public ResponseEntity<byte[]> fileDownload(HttpServletRequest request, String url, String fileName) throws Except...
2019-01-07 18:16:46
2111
原创 LeetCode 206.反转链表
引用LeetCode 206.反转链表正文递归实现(运行77ms解决,效率极差)使用分治法的思想,拿到一个链表1-2-3-4-5,当你要反转这个链表的时候,你只需要得到2-3-4-5的反转,再加上1就可以了,同理2-3-4-5的反转就是将2-3-4反转,再结尾加上2便可。以此类推直到链表只剩下5,那5的反转就是自己本身再依次递归回去。/** * Definition fo...
2018-11-24 16:09:53
169
原创 关于筛法求素数(质数)问题 LeetCode 204.计算质数
引用204. 计数质数Grubbyskyer博客正文找素数或者找质数是算法题中最基础的题型之一。方法同样众多,不同的是效率不相同。从最基础的双层n循环到开方循环再到筛法,效率不断提高,这里我们便省略最基础的两种双层循环的方法,直接从筛法说起。埃氏筛法埃氏筛法的主要思想为,大于1的任意数n的倍数m都不是素数,因为m必然可以被n整除。利用这个思路,我们可以建立一个足够大的标记...
2018-11-22 14:31:01
533
原创 多线程与乐观锁和悲观锁
引用拉夫德尔的博客正文锁存在的意义假设在程序中有一个整型变量n,我们设计一个方法f()对n进行自增。那么当n=1时调用f()方法,返回的n应当为几?如果没有过并行开发经验,一定认为n为2。但是结果往往并不确定,在f()方法内,首先我们要获取n的值,然后调用自增方法,最后返回自增后的结果。所以f()方法并不是一个原子方法。当多个线程同时调用这一个方法的时候,由于cpu的时间片轮...
2018-11-19 17:19:55
716
原创 动态规划解决不相邻数组极值问题(LeetCode 198.打家劫舍)
来源LeetCode 198.打家劫舍Grandyang博客内容递归回溯法当选择了第i个数,则下一次选择的范围是第i+2和i+3个,利用这一点进行回溯尝试。但是这种方法带来的负面影响就是时间复杂度很高,空间复杂度也因为没有优化成尾递归而很大,很容易在数据大的情况下栈溢出。class Solution { public int rob(int[] nums) {...
2018-11-16 13:37:39
660
原创 Hibernate如何执行自定义SQL语句
一、通过Hibernate执行自定义SQL语句 使用Hibernate封装过的get()方法获取数据库信息,往往无法灵活的设置查询条件以及排序、分页等操作。所以我们可以使用Hibernate直接调用SQL语句。 1.配置Spring和Hibernate的xml <bean id="sessionFactory" class="org.springframework.orm...
2018-04-26 09:53:38
16615
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人