自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 解决Mybatis中sql使用in超过1000个值报错

解决Mybatis中sql使用in超过1000个值报错报错源代码解决方法直接在sql中进行拼接,对下标进行判断,到998的时候进行处理(因为还要拼接一个null来处理最后一个逗号,这样处理每个in里面加上null最多会有999个参数),拼接一个or 再接着执行in操作。...

2021-03-31 12:13:29 1909

原创 springboot+mybatis中的sql语句报错

Parameter ‘pStart’ not found. Available parameters are [0, 1, param1, param2]] with root cause报错的时候语句是这样的需要修改成下面这样,用下标来表示属性才行

2019-03-17 15:23:19 582

原创 25.二叉树中和为某一值的路径(JAVA)

二叉树中和为某一值的路径题目描述输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前)具体实现解题思路:利用递归来完成,实际上和深度优先遍历类似,先遍历最左叶子结点,再回滚遍历其它结点,中途要记录目标值和结果,遍历过一个结点目标值就减去这个结点...

2018-12-02 23:15:13 415

原创 Springboot使用thymeleaf进行页面跳转

要修改的文件1.在porm文件中添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> <version>2.0.6.RELE...

2018-11-21 10:52:43 4527 1

原创 24.二叉搜索树的后序遍历(JAVA)

二叉搜索树的后序遍历题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。具体实现解题思路:利用递归来完成,用后序遍历的特点,根结点永远在最后一位,还有二叉搜索树的特点,左子树都小于根结点,右子树都大于根结点,这样每次都可以把序列分成三段,第一段是左子树,第二段是右子树,第三段是一个根结点。然后左右...

2018-11-19 10:24:09 119

原创 23.从上往下打印二叉树(JAVA)

从上往下打印二叉树题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。具体实现:**解题思路:**利用一个队列来实现,首先把根结点root入队,然后如果队列不为空则进行循环:首先出队一个用node接收出队结点,判断node是否有左右子结点,有则依次入队,然后就把当前结点node的值加入list(这是最后的结果数组),最后重复循环直到队列空。 public ArrayLi...

2018-11-18 22:12:00 405

原创 22.栈的压入、弹出序列(JAVA)

栈的压入、弹出序列题目描述输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)具体实现解题思路:借助一个辅助栈,遍历压栈顺序,每个元素依次入栈...

2018-11-18 16:18:17 94

原创 21.包含min函数的栈(JAVA)

包含min函数的栈题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。具体实现解题思路:创建一个辅助栈,用来储存每次入栈时的栈里元素的最小值,数据每压栈或出栈一次,辅助栈也要压栈或出栈一次。这样可以保持当前辅助栈的栈顶的值必定是元素中的最小值。import java.util.Stack;import java.util.Arr...

2018-11-17 16:40:36 208

原创 20.顺时针打印矩阵(JAVA)

顺时针打印矩阵题目描述输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.具体实现解题思路:主要要注意循环的边界条件。把矩阵看成一个个的圈,每次都是从左上角打印起,第一圈是(...

2018-11-16 09:35:21 165

原创 ReflectionToStringBuilder使用

配置<dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.4</version></dependency>使用例子@Request

2018-11-08 20:09:43 471

原创 19.二叉树的镜像(JAVA)

二叉树的镜像题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 ...

2018-11-08 10:34:23 133

原创 18.树的子结构(JAVA)

树的子结构题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)具体实现**解题思路:**利用递归来完成,就是普通的递归遍历A来查找,主要是要注意左右子树要分开写,还有递归的边界条件要注意。public class TreeNode { int val = 0; TreeNode left = null; TreeNod...

2018-11-07 14:39:28 358

原创 17.合并两个排序的链表(JAVA)

合并两个排序的链表题目描述输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。具体实现**解题思路:**利用递归来完成,首先要解决好空链表的情况,1.链表1为空,直接返回链表2。2.链表2为空,直接返回链表1.3.链表1、2都为空则返回null。其次开始比较链表1、2的头结点的大小,创建一个结点newlist,两种情况1.list1.val...

2018-11-06 13:38:07 139 1

原创 16.反转链表(JAVA)

反转链表题目描述输入一个链表,反转链表后,输出新链表的表头。具体实现**解题思路:**采用的是断链法,直接断掉指向当前结点的链,然后反过来指向它。如//1->2->3->4->5 变成//1<-2<-3 4->5当前结点是head,定义两个结点,res为当前结点的前一节点,next为当前结点的下一结点/*public class List...

2018-11-05 15:13:02 114

原创 15.链表中倒数第k个结点(JAVA)

链表中倒数第k个结点题目描述输入一个链表,输出该链表中倒数第k个结点。具体实现解法一:**解题思路:**先遍历统计总的结点数count,分两种情况1.如果k > count,则直接返回null2.如果k < count,从第一个结点一直遍历到第count-k个结点,该结点就是结果。**缺点:**这种做法太浪费时间了,因为要遍历链表两次,链表遍历是比较慢的。...

2018-11-04 23:23:45 135

原创 14.调整数组顺序使奇数位于偶数前面(JAVA)

调整数组顺序使奇数位于偶数前面题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。具体实现解法一:**解题思路:**先遍历数组记录一共有多少个奇数,然后新建一个数组,0到小于oddCount(奇数个数)保存奇数,oddCount到最后保存偶数,最后再将数据写回原来的...

2018-11-02 14:11:23 145

原创 13.在O(1)时间删除链表结点(JAVA)

在O(1)时间删除链表结点题目描述:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。具体实现**解题思路:**要删除这个结点i,可以复制这个结点i的下个结点j的内容到i上,然后把i结点的next指针指向j的下一个结点,再把j结点删除,这样就可以实现删除之前i结点了public class Shanchu_jiedian { static class ListN...

2018-10-30 23:30:02 98

原创 12.打印1到最大的n位数(JAVA)

打印1到最大的n位数题目描述输入数字n,按顺序打印出从1到最大的n位十进制数。比如输入3,则打印1、2、3一直到最大的3位数999.具体实现解题思路:用字符串来表示大数,先把每一位都置为‘0’,然后每次都在字符串表示的数字上加1,再打印出来即可。重点是要注意什么时候停止加1操作,还有打印数字的时候不能打印出前面的0import java.util.Scanner;public cla...

2018-10-29 17:08:00 571 1

原创 11.数值的整数次方(JAVA)

数值的整数次方题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。具体实现解题思路:1.全面考察指数的正负、底数是否为零等情况。2.写出指数的二进制表达,例如13表达为二进制1101。3.举例:10^1101 = 100001*100100*10^1000。4.通过&1和>>1来逐位读取1101,...

2018-10-27 20:22:01 135

原创 10.二进制中1的个数(JAVA)

二进制中1的个数题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。具体实现:解法一:解题思路:为了避免移位n的时候出现死循环的问题,创建一个flag=1来和n与操作,来判断n的最低位是否为1。接着把flag左移移位得到2,再和n与操作,就能判断n的次低位是否为1,…这样循环左移,每次都能判断n的一位是否为1.public class Solution { ...

2018-10-26 10:18:19 115

原创 9.斐波那契数列(JAVA)

斐波那契数列题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39具体实现:解法一:解题思路:递归完成,确定n=0,1,2时的值,后面直接调用n-1和n-2即可,但是时间太久了public class Solution { public int Fibonacci(int n) { if(n ==...

2018-10-26 10:17:02 383 1

原创 8.旋转数组的最小数字(JAVA)

旋转数组的最小数字题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。具体实现解题思路:用二分查找法。mid = low + (high - lo...

2018-10-26 10:16:05 122 1

原创 关于MySQL的驱动org.gjt.mm.mysql.Driver

今天看了一个比较老视频使用org.gjt.mm.mysql.Driver来驱动连接,便试了一下看看怎么样,结果一直连不上数据库,后来看了tomcat的后台发现有报这个问题,于是把驱动改成com.mysql.jdbc.Driver之后就神奇的可以连接上数据库了,照理来说两个都是可以用的才对。下次如果用org.gjt.mm.mysql.Driver不行可以改成com.mysql.jdbc.Driver...

2018-10-25 14:01:42 13194 2

原创 7.用两个栈来实现队列(JAVA)

用两个栈来实现队列题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。具体实现解法一解题思路:入队的时候先把所有的数据都压栈在stack1中,调用出队的方法时,循环出栈把stack1中的数据依次压栈到stack2中,此时的stack2的栈顶就是要出队的数据,用t来保存等下返回,最后再把stack2的数据又压回stack1即可。Stack<I...

2018-10-25 10:39:32 119

原创 6.重建二叉树(JAVA)

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。具体实现解题思路:利用递归来完成,重点是要利用好前序遍历和中序遍历的特点,两者结合来完成递归,前序的起始值必然是根结点,然后去中序中找到这个根结点...

2018-10-25 10:17:53 451

原创 5.从尾到头打印链表(Java)

从尾到头打印链表题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。具体实现:解法一:解题思路:有点浪费空间的做法,需要创建两个ArrayList对象,用list来保存链表中从头到尾的数据,再把list中的数据反转到list2中即是结果。/*** public class ListNode {* int val;* ...

2018-10-22 13:35:19 159

原创 4.替换空格(Java)

替换空格题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。具体实现:解法一:解题思路:由于接收的已经是StringBuffer类了,所以可以直接遍历字符串,当遇到空格时,调用其中的方法delete(int start, int end)删除空格,再调用insert(i...

2018-10-10 14:09:03 315

原创 3.二维数组的查找(Java)

二维数组的查找题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。具体实现解法一:**解题思路:**暴力解法,直接遍历public boolean Find(int target, int [][] array) { fo...

2018-10-10 13:07:27 107

原创 PTA 1013 数素数 (20)

1013 数素数 (20)(20 分)令P~i~表示第i个素数。现任给两个正整数M <= N <= 10^4^,请输出P~M~到P~N~的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从P~M~到P~N~的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27输出样例:11 13 17...

2018-07-31 22:33:09 334

原创 java-天梯杯-L1-027. 出租

L1-027. 出租时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越下面是新浪微博上曾经很火的一张图:一时间网上一片求救声,急问这个怎么破。其实这段代码很简单,index数组就是arr数组的下标,index[0]=2 对应 arr[2]=1,index[1]=0 对应 arr[0]=8,index[2]=3 对应 arr[3]=0,以此类推…… ...

2018-03-30 09:30:30 316

原创 java-天梯杯-L1-020. 帅到没朋友

L1-020. 帅到没朋友时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友。本题就要求你找出那些帅到没有朋友的人。输入格式:输入第一行给出一个正整数N(<=100),是已知朋友圈的个数;随后N行,每行首先给出一个正整数K(<=1000),为朋友圈中的人数,然后列出一个朋...

2018-03-29 18:29:24 1465

原创 java - 天梯赛练习 - L1-009. N个数求和

L1-009. N个数求和时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越本题的要求很简单,就是求N个数字的和。麻烦的是,这些数字是以有理数“分子/分母”的形式给出的,你输出的和也必须是有理数的形式。输入格式:输入第一行给出一个正整数N(<=100)。随后一行按格式“a1/b1 a2/b2 ...”给出N个有理数。题目保证所有分子和分母都在...

2018-03-21 10:29:21 1130

原创 蓝桥杯 算法训练 阿尔法乘积

问题描述  计算一个整数的阿尔法乘积。对于一个整数x来说,它的阿尔法乘积是这样来计算的:如果x是一个个位数,那么它的阿尔法乘积就是它本身;否则的话,x的阿尔法乘积就等于它的各位非0的数字相乘所得到的那个整数的阿尔法乘积。例如:4018224312的阿尔法乘积等于8,它是按照以下的步骤来计算的:  4018224312 → 4*1*8*2*2*4*3*1*2 → 3072 → 3*7*2

2017-11-17 17:52:22 52850 1

原创 蓝桥杯 算法训练 黑色星期五

问题描述  有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是“诸事不宜”。请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是13号又是星期五的情形,以帮助你的迷信朋友解决难题。  说明:(1)一年有365天,闰年有366天,所谓闰年,即能被4整除且不能被100整除的年份,或是既能被100整除也能被400整除的年份;(2)已知1998年1

2017-11-17 16:30:39 21053

原创 蓝桥杯 算法训练 明明的随机数

问题描述  明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。输入格式  输入有2行,第1行为1个正整数,表示所生成

2017-11-15 23:32:59 2104

转载 蓝桥杯 算法训练 暗恋

import java.util.Scanner;public class Main { static int [][]a = new int[201][201]; static int deal(int x, int y, int w){ //判断是否为边长为w的正方形,是返回1,不是返回0 for(int i = 0; i < w; i++){ for(int j = 0;

2017-11-15 22:21:54 1464

原创 算法训练 数的统计

import java.util.Scanner;public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int []a =

2017-11-15 14:15:05 3971

原创 P1103

编程实现两个复数的运算。设有两个复数 和 ,则他们的运算公式为:  要求:(1)定义一个结构体类型来描述复数。  (2)复数之间的加法、减法、乘法和除法分别用不用的函数来实现。  (3)必须使用结构体指针的方法把函数的计算结果返回。  说明:用户输入:运算符号(+,-,*,/) a b c d.  输出:a+bi,输出时不管a,b是小于0或等于0都按该格式输出,输出时a,b

2017-10-16 23:27:02 1500

原创 字符串变换

问题描述  相信经过这个学期的编程训练,大家对于字符串的操作已经掌握的相当熟练了。今天,徐老师想测试一下大家对于字符串操作的掌握情况。徐老师自己定义了1,2,3,4,5这5个参数分别指代不同的5种字符串操作,你需要根据传入的参数,按照徐老师的规定,对输入字符串进行格式转化。  徐老师指定的操作如下:  1 表示全部转化为大写字母输出,如abC 变成 ABC  2 表示全部转换为

2017-09-30 01:01:03 3703

原创 最大最小公倍数

问题描述已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。输入格式输入一个正整数N。输出格式输出一个整数,表示你找到的最小公倍数。样例输入9样例输出504数据规模与约定1 6。~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2017-09-27 00:06:58 602

空空如也

空空如也

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

TA关注的人

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