自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

restart1025的博客

所学知识分享,欢迎大家讨论和指导

  • 博客(20)
  • 资源 (3)
  • 收藏
  • 关注

原创 算法之冒泡排序

概念冒泡排序算法需要遍历几次数组。每次遍历都要比较连续相邻的元素,如果某一对相邻元素是降序,则互换它们的值,否则保持不变。由于较小的值像“气泡”一样逐渐浮向顶部,而较大的值沉向底部,所以叫冒泡排序。时间复杂度最差的情况下,冒泡排序算法需要进行n-1次遍历。第一次遍历需要n-1次比较,第二次遍历需要n-2次比较,依次进行;因此比较总数为:(n-1)+(n-2)+…+2+1=n(n-1)/2=O(n2

2017-08-31 11:09:42 435

原创 剑指offer(十四)链表中倒数第k个结点

题目输入一个链表,输出该链表中倒数第k个结点。案例输入{1,2,3,4,5}, 1,则输出5分析这道题再次验证了思维的重要性最初的思路,就是先遍历链表,算出长度,然后再次遍历到n-k,然后返回,当然思路和做法都是正确的,但是却不是最优的优化之后,我想到了便利的时候将每一个节点都放进List中,然后直接get(n-k)就好了,这样只需要遍历一次但是放进去的时候会出现一点问题,因为放进去的是一

2017-08-29 23:25:33 221

原创 剑指offer(十三)调整数组顺序使奇数位于偶数前面

题目输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。案例{1,8,3,4,5,6} ->{1,3,5,8,4,6}分析1、要想保证原有次序,可以顺次移动或相邻交换。2、i从左向右遍历,找到第一个偶数。3、j从i+1开始向后找,直到找到第一个奇数。4、将[i,…,j-1

2017-08-29 18:44:58 221

原创 剑指offer(十二)数值的整数次方

题目给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。案例2.5的3次方,3.6的5次方,2.8的-3次方等等分析第一想法就是return Math.pow(base, exponent);然后通过了,这也是一个方法,java内部封装好的工具类但是题目显然不是为了让我们那么随便过去的,而是要达到锻炼的目的一种就是直接循环,先将exp

2017-08-29 16:44:01 257

原创 剑指offer(十一)二进制中1的个数

题目输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。案例1在二进制中是0000 0001,所以1的个数是13在二进制中是0000 0011,所以1的个数是2负数在二进制中是用其对应正数的补码再加一来表示的,即:-3所对应的二进制是0000 0011,其补码是1111 1100,再加一则是1111 1101,1的个数是7位分析将二进制数不断右移位至0即可遍历所有的1,但是中间

2017-08-28 23:33:09 307

原创 剑指offer(十)矩形覆盖

题目我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?分析先找规律,n<=0时,结果肯定返回0n = 1时,返回值为1;n=2时,返回值为2;n=3时,返回值为3等等当为n时,还是按照之前的思想,化整为零,从一处着手现在看第一个1*1的位置,它有两种放置的方式,横着或者竖着放置矩形当它竖着放置的时候,剩余的就是f

2017-08-28 23:12:17 308

原创 剑指offer(九)变态跳台阶

题目一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。解析将之前的跳台阶理解透彻之后,这个就非常简单了,思路不会的可以参考剑指offer(八)跳台阶 n = 1和2 的结果不变,还是1和2n = 3时,结果为4,f(2) + f(1) + 1 = 2f(2)n = 4时,结果为8,f(3) + f(2) + f(1) + 1 = 2

2017-08-28 17:35:05 307

原创 剑指offer(八)跳台阶

题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。案例 台阶 跳法 1 1 2 2 3 3 4 5 5 8等等,以此类推分析我想出来的方法是,利用组合来获取最终结果即如果是全部一级一级跳,有一种方法;然后一个2级,其他都是一级跳,有n种方法;以此类推,就是组合的计算,m个2级,则是在 (n - 2

2017-08-28 16:47:19 307

原创 JAVA实现排列组合

排列的计算公式: 组合的计算公式 阶乘的实现 /** * 计算阶乘数,即n! = n * (n-1) * ... * 2 * 1 * @param n * @return */ private static long factorial(int n) { long sum = 1; while( n > 0 )

2017-08-28 13:54:27 21995 2

原创 剑指offer(七)斐波那契数列

题目 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。n<=39定义 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法

2017-08-27 23:39:14 558

原创 剑指offer(六)旋转数组的最小数字

题目 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。若数组大小为0,请返回0。NOTE:给出的所有元素都大于0。案例 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 分析 看到题目和案例,说是非递减数组,那默认就是递增数组了于是按照递增数组思路来做,第一想法就是从后往

2017-08-27 23:07:56 195

原创 剑指offer(五)两个栈实现队列

题目 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。分析 这题没有什么案例,就是用两个栈来完成队列的操作之前也写过这部分代码,自己找到看了一下,感觉有点不对,于是试了一下,发现真的不通过,正好再完善一下栈的特性是先进后出,队列呢是先进先出,想用两个栈完成队列的操作还是挺简单的先将一个栈作为存储,即每次进来都用stack1来进行存储,然后出的时候,将所

2017-08-27 20:33:45 195

原创 剑指offer(四)重建二叉树

题目 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。案例 输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。分析 对于这道题,之前都是接触二叉树的遍历,对于逆向重建真的没有一点思路,然后想找规律做出来,最终想法受限,结果失败了。然后看网上大神的做法和思路

2017-08-27 20:22:45 220

原创 剑指offer(三)从尾到头打印链表

题目 输入一个链表,从尾到头打印链表每个节点的值。案例 输入一个链表,将值打印出来(我的案例上是将值放到ArrayList中去) ListNode root = new ListNode(); root.val = 1; root.nxt = new ListNode(); root.nxt.val = 2; root.nxt.nxt =

2017-08-23 17:49:44 234

原创 剑指offer(二)替换字符

题目展示 请实现一个函数,将一个字符串中的空格替换成“%20”。案例: 当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy.思考题目 第一想法,直接用字符串的replace方法替换,即str.toString().replace(” “, “%20”);然后拿去验证,发现竟然验证通过了。本着精益求精的思想,想着可能人家想让我们自己实现repl

2017-08-23 16:20:14 210

原创 剑指offer(一)二维数组中的查找

题目是:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上往下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该函数。案例: 一个二维数组,每行、每列都是递增排序。 例如下面这个数组,如果查找数字7,则返回true,如果查找数组5,则返回false。 1 2 8 9 2 4 9 12 4 7 10 13 6 8

2017-08-23 12:12:47 229

原创 后台传输JSON或List<对象>,前台对应的解析方法

今天在前台展示信息的时候,直接从后台返回List,list是直接从数据库取出来的对象集合,前台用c:forEach循环的话正常显示,代码如下:<ul id="uldiv"> <c:forEach items='${userList }' var="user"> <li>用户名:${user.username }----密码:${user.password }----</li>

2017-08-15 15:16:38 3987

原创 Gradle4.0转换Spring源码为eclipse时出现的问题

最近受到老大影响,想看一下spring源码,于是从github上将源码clone下来,用Gradle去编译,然后导入eclipse分析。编译的时候,其他地方都很正常,但是spring-tx文件夹下编译的时候就一直出错,错误如下:* Where:Script 'D:\study\spring-framework\gradle\ide.gradle' line:24* What went wrong

2017-08-10 15:42:58 2229

原创 SpringBoot支持JSP页面跳转(基于Gradle)

在Controller中使用 @RestController 注解,该注解是spring 4.0引入的,其包含了 @Controller 和 @ResponseBody 注解。我们可以理解为 @Controller的增强版。专门为响应内容式的 Controller 而设计的,可以直接响应对象为JSON。 而 @Controller 用来响应页面,spring-boot 支持多种模版引擎包括:

2017-08-09 13:50:44 2217 1

原创 SpringBoot连接SQLite数据库(基于Spring-Data-Jpa和Gradle配置)

最近学习SpringBoot,但是电脑没办法装Mysql,所以想着用SQLite来作为数据库,下面简单介绍一下配置。 - 先配置gradlecompile 'org.springframework.boot:spring-boot-starter-web', 'org.springframework.boot:spring-boot-starter-data-jpa',

2017-08-08 14:07:14 11971 1

Bootstrap3.3.6的后台主题UI框架

Bootstrap3.3.6的后台主题UI框架

2017-08-30

metronic_1.5.5_bootstrap3.0.3 源码页面展示全部

metronic_1.5.5_bootstrap3.0.3 源码、页面展示、css、js等全部

2017-08-18

空空如也

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

TA关注的人

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