![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 55
小科粒
我喜欢黑夜……
展开
-
数据库查询百万级数据导出excel功能优化
数据库查询百万级数据导出excel功能优化原创 2022-09-29 11:50:30 · 1307 阅读 · 3 评论 -
动态规划算法
动态规划算法动态规划题目特点:1. 计数2. 求最大值最小值3. 求存在性例题1. 换硬币 ——求最值动态规划2. 不同的路径——计数型动态规划3. 跳跃游戏——存在型动态规划动态规划题目特点:1. 计数1)有多少种方式从左上角走到右下角2)有多少种加法选出k个数和是sum2. 求最大值最小值1)从左上角到右下角路径的最大数字和2)求最长上升子序列长度3. 求存在性1)取石子游戏,先手是否必胜2)能不能选出k个数使和是sum例题1. 换硬币 ——求最值动态规划题目描述:给出不同原创 2021-06-03 14:34:55 · 128 阅读 · 2 评论 -
蓝桥杯赛前整理
1. 全排列//全排列 例:abc acb bac bca cab cbapublic class Main4 { //从第k个元素开始的全排列 public static void f(char[] data,int k) { if(k==data.length) { System.out.println(data); } for(int i=k;i<data.length;i++) { char t = data[i]; data[i] = data[k]原创 2021-04-18 08:07:58 · 122 阅读 · 0 评论 -
四大排序算法
冒泡排序public static void bubbleSort(int[] a) { for(int i=0;i<a.length-1;i++) { for(int j=0;j<a.length-i-1;j++) { if(a[j]>a[j+1]) { int t = a[j]; a[j]=a[j+1]; a[j+1]=t; } } } }选择排序public static void selectionSort原创 2021-04-14 07:45:39 · 162 阅读 · 0 评论 -
第六届蓝桥杯Java B组 三羊献瑞
Description观察下面的加法算式:其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。Input没有输入。Output输出“三羊献瑞”所代表的四位数字。import java.util.Arrays;/* a b c d + e f g b e f c b i */public class _三羊献瑞_ { //用于检查这个数组中的元素是否各不相同 public stati原创 2021-04-11 11:06:19 · 126 阅读 · 0 评论 -
位运算的技巧
在处理整型数值时,可以直接对组成整性数值的各个位进行操作。这意味着可以使用屏蔽技术获得整数中的各个位&(与)、|(或)、^(异或)、~(非/取反)>>和>>运算符将二进制位进行右移或者左移操作>>>运算符将用0填充高位;>>运算符用符号位填充高位,没有<<<运算符对于int型,1<<35与1>>3时相同的,而做百年的操作数是long型时需对右侧操作数模64与:都为1结果为1;或:有一个为1结果.原创 2021-03-22 21:09:11 · 85 阅读 · 0 评论 -
第十届蓝桥杯Java B组 数的分解
数的分解Description把 2019 分解成 3 个各不相同的正整数之和,并且要求每个正整数都不包含数字 2 和 4,一共有多少种不同的分解方法?注意交换 3 个整数的顺序被视为同一种方法,例如 1000+1001+18 和1001+1000+18 被视为同一种。Input没有输入。Output这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。package test2019;import java.ut原创 2021-03-20 21:00:21 · 174 阅读 · 0 评论 -
第四届蓝桥杯Java B组 三部排序
三部排序Description一般的排序有许多经典算法,如快速排序、希尔排序等。但实际应用时,经常会或多或少有一些特殊的要求。我们没必要套用那些经典算法,可以根据实际情况建立更好的解法。比如,对一个整型数组中的数字进行分类排序:使得负数都靠左端,正数都靠右端,0在中部。注意问题的特点是:负数区域和正数区域内并不要求有序。可以利用这个特点通过1次线性扫描就结束战斗!!以下的程序实现了该目标。其中x指向待排序的整型数组,len是数组的长度。Input如果给定数组:25,18,-2,0,16,原创 2021-03-07 09:51:28 · 151 阅读 · 0 评论 -
第四届蓝桥杯Java B组 有理数类
有理数类Description有理数就是可以表示为两个整数的比值的数字。一般情况下,我们用近似的小数表示。但有些时候,不允许出现误差,必须用两个整数来表示一个有理数。这时,我们可以建立一个“有理数类”,下面的代码初步实现了这个目标。为了简明,它只提供了加法和乘法运算。内部使用该类的示例:Rational a = new Rational(1,3);Rational b = new Rational(1,6);Rational c = a.add(b);System.out.println(a原创 2021-03-07 09:41:36 · 119 阅读 · 0 评论 -
第四届蓝桥杯Java B组 振兴中华
振兴中华Description小明参加了学校的趣味运动会,其中的一个项目是:跳格子。地上画着一些格子,每个格子里写一个字,如下所示:从我做起振我做起振兴做起振兴中起振兴中华比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华”字结束。要求跳过的路线刚好构成“从我做起振兴中华”这句话。请你帮助小明算一算他一共有多少种可能的跳跃路线呢?Input没有输入。Output输出可能次数。分析:递归算法:dfs+回溯原创 2021-03-07 09:28:03 · 101 阅读 · 0 评论 -
第四届蓝桥杯Java B组 马虎的算式
马虎的算式Description小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。有一次,老师出的题目是:36 x 495 = ?他却给抄成了:396 x 45 = ?但结果却很戏剧性,他的答案竟然是对的!!因为 36 x 495 = 396 x 45 = 17820类似这样的巧合情况可能还有很多,比如:27 x 594 = 297 x 54假设 a b c d e 代表1~9不同的5个数字(注意是各不相同的数字,且不含0)能满足形如: ab x cde = adb x ce原创 2021-03-07 09:16:01 · 165 阅读 · 0 评论 -
第四届蓝桥杯Java B组 世纪末的星期
Description曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。还有人称今后的某个世纪末的12月31日,如果是星期一则会…有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!!于是,“谣言制造商”又修改为星期日…1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(即xx99年)的12月31日正好是星期天(即星期日)?请回答该年份(只写这个4位整数,不要写12月31等多余信息)Input没有输入。Output见上文描述。分析:原创 2021-03-06 21:30:53 · 137 阅读 · 0 评论 -
递归算法笔记
递归与循环理论上,任何循环都可以重写为递归形式有时候,为栈限制,需要尾递归Java不支持尾递归有些语言没有循环语句,只能使用递归尾递归:函数在调用自身之后没有执行其他任何的操作就是尾递归。尾递归的原理是将递归变成迭代。改为递归的关键是发现逻辑的“相似性”不要忘记递归“出口”例1:打印出从0-9的整数循环:public class Main { public static void main(String[] args) { for(int i=0;i<10;i原创 2021-02-28 17:20:20 · 318 阅读 · 6 评论 -
数据封装操作 :登录、注册、修改密码(Java通过JDBC连接数据库)
数据库封装操作DBOper类登录前端代码LoginServlet注册前端代码RegisterServlet修改密码前端代码ChangeServlet总结DBOper类package jxk;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import ...原创 2020-04-23 10:37:52 · 2693 阅读 · 0 评论