- 博客(90)
- 资源 (25)
- 收藏
- 关注
原创 hdu3790最短路径问题(迪杰斯特拉算法+详解+代码)
最短路径问题Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 32544 Accepted Submission(s): 9565Problem Description给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t
2018-03-31 23:43:00 355
原创 hdu3790最短路径问题 (Dijkstra算法)
最短路径问题Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 32544 Accepted Submission(s): 9565Problem Description给你n个点,m条无向边,每条边都有长度d和花费p,给...
2018-03-31 23:14:44 478
原创 还是畅通工程(克鲁斯卡尔算法+并查集)
还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 53997 Accepted Submission(s): 24504Problem Description某省调查乡村交通状况,得到的统计表中列出了任意两村...
2018-03-31 20:53:52 546
原创 hdu1232畅通路程(并查集)
参考博客:https://blog.csdn.net/blue_skyrim/article/details/50178287 畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 62854 Accepted Submi...
2018-03-31 19:51:02 175
原创 包子凑数(蓝桥杯)
标题:包子凑数小明几乎每天早晨都会在一家包子铺吃早餐。他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子。每种蒸笼都有非常多笼,可以认为是无限笼。每当有顾客想买X个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这-。比如一共有3种蒸笼,分别能放3、4和5个包子。当顾客想买11个包子时,大叔就会选2笼3个的再加1笼5个的(也可能选出1笼3个的再加2笼4个的)。当然有时包子大叔...
2018-03-31 19:26:35 544
原创 01背包问题(DFS解法)
有5个物体,每个物品只有一个,其重量分别是为2,2,6,5,4,价值分别为6,3,5,4,6,背包的载重量为10,求装入背包的物体及总质量。计算结果:15package com.lanQiaoFor6;import java.util.ArrayList;import java.util.TreeSet;public class JAVA_6 { static Tree...
2018-03-31 19:23:32 1758
原创 纸牌三角形(蓝桥杯)
标题:纸牌三角形 A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。 下图就是一种排法。 A 9 6 4 8 3 7 5 2 镜像后的: A 6 9 8 4 2 5 7 3 这样的排法可能会有很多。 如果考虑旋转、镜像后相同的算同一种,一共有多少...
2018-03-31 19:15:51 695
原创 包子凑数(蓝桥杯)
标题:包子凑数小明几乎每天早晨都会在一家包子铺吃早餐。他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子。每种蒸笼都有非常多笼,可以认为是无限笼。每当有顾客想买X个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这-。比如一共有3种蒸笼,分别能放3、4和5个包子。当顾客想买11个包子时,大叔就会选2笼3个的再加1笼5个的(也可能选出1笼3个的再加2笼4个的)。当然有时包子大叔...
2018-03-31 19:12:48 489 1
原创 分巧克力(蓝桥杯)
标题: 分巧克力儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足:1. 形状是正方形,边长是整数 2. 大小相同 例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。当...
2018-03-31 09:33:33 278
原创 DFS全排列
第一种方法:package com.tjrac_java_2;import java.util.Scanner;public class Fun { public static int s=0; static int[] a=new int[100000]; public static void main(String[] args) { int...
2018-03-30 18:59:25 246
原创 饮料换购(蓝桥杯)
饮料换购乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊C型饮料,凭3个瓶盖可以再换一瓶C型饮料,并且可以一直循环下去,但不允许赊账。请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的n瓶饮料,最后他一共能得到多少瓶饮料。输入:一个整数n,表示开始购买的饮料数量(0package com.tjrac_java_2;import java.util.Scanne...
2018-03-30 17:39:19 702
原创 标题: k倍区间(蓝桥杯)
package com.tjrac_java_2;import java.util.Scanner;import java.util.Set;import java.util.TreeSet;import java.util.Vector;public class TT { private static int sum; public static void mai...
2018-03-30 17:19:50 222
原创 加法变乘法(蓝桥杯)
题意: 我们都知道:1+2+3+ … + 49 = 1225 现在要求你把其中两个不相邻的加号变成乘号,使得结果为2015比如: 1+2+3+…+10*11+12+…+27*28+29+…+49 = 2015 就是符合要求的答案。请你寻找另外一个可能的答案,并把位置靠前的那个乘号左边的数字提交(对于示例,就是提交10)。注意:需要你提交的是一个整数,不要填写任何多余的内容。...
2018-03-30 15:32:20 488
原创 LCS最长公共子序列java实现代码保存
package com.tjrac_java_2;import java.util.Scanner;public class Lcs { public static void main(String[] args) { String x,y; int[][] sum= new int [505][505]; int i,j,len...
2018-03-29 19:11:09 256
原创 蓝桥杯-方格填数
方格填数如下的10个格子 +–+–+–+ | | | | +–+–+–+–+ | | | | | +–+–+–+–+ | | | | +–+–+–+(如果显示有问题,也可以参看【图1.jpg】)填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻)一共有多少种可能的填数方案?请填写表示方案数目的整数。 注...
2018-03-29 11:51:34 317
原创 Arrays.sort()用来自定义排序的使用
compareTo方法: public int compareTo(String anotherString)按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode 值。按字典顺序将此 String 对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此 String 对象位于参数字符串之前,则比较结果为一个负整数。如果按字典顺序此 String 对象位...
2018-03-27 13:07:28 3453
原创 转换流和内存流
转换流:把字节流转成字符流:InputStreamReader:把字节输入流转成字符输入流. OutputStreamWriter:把字节输出流转成字符输出流.为什么有字节转字符流,没有字符转字节流. 字节流可以操作一切文件(纯文本文件/二进制文件). 字符流是用来操作中文纯文本使用的,本身是对字节流的增强.内存流(数组流):适配器模式:把数据先临时存在数组...
2018-03-25 22:35:04 411
原创 java中的包装流和缓冲流概述
处理流/包装流(相对于节点流更高级)装饰设计模式/包装模式:1:隐藏了底层的节点流的差异,并对外提供了更方便的输入/输出功能,让我们只关心高级流的操作. 2:使用处理流包装了节点流,程序直接操作处理流,让节点流与底层的设备做IO操作. 3:只需要关闭处理流即可. 包装流如何区分:写代码的时候,发现创建对象对象的时候,需要传递另一个流对象. new 包装流( 流对象 ...
2018-03-25 22:29:43 1540
原创 java中字符编码详解
字符编码的发展历程:阶段1: 计算机只认识数字,我们在计算机里一切数据都是以数字来表示,因为英文符号有限, 所以规定使用的字节的最高位是0.每一个字节都是以0~127之间的数字来表示,比如A对应65,a对应97. 这就是美国标准信息交换码-ASCII.阶段2: 随着计算机在全球的普及,很多国家和地区都把自己的字符引入了计算机,比如汉字. 此时发现一个字节能表示数字范围太小,不能包...
2018-03-25 22:24:35 423
原创 java中有关文件流的操作
文件流: 顾名思义,程序和文件打交道.此时我们谈及的文件,值得是纯文本文件(txt的,不要使用Word,Excel),在字节流中,暂时不要使用中文. FileInputStream: 文件的字节输入流 FileOutputStream: 文件的字节输出流 FileReader:文件的字符输入流 FileWriter:文件的字符输出流文件字符流:文件的字节流...
2018-03-25 22:10:32 3292
原创 输入和输出(IO)概述
什么是IO:(Input/Output):输入和输出.IO设备: 和电脑通信的设备. 输入设备:麦克风,扫描器,键盘,鼠标等. 输出设备:显示器,打印机,投影仪,耳机,音响等.为什么程序需要IO呢? 案例1:打游戏操作,得分比较高,存储游戏的信息(XXX-888分). 此时需要把游戏中的数据存储起来,只能存储在文件中. 案例2:打游戏操作,查看游戏英雄榜, 英雄榜
2018-03-25 22:03:49 10047
原创 java中的IO操作之File类
Java的集合框架: 类和接口存在于java.util包中.Java的IO: 类和接口存在于java.io包中.学习方法: 文档在手,天下我有!-----------------------------------------------------------------------------------------讲IO操作之前,必须要先讲File类(文件/目...
2018-03-25 21:46:05 178
原创 TreeSet类
TreeSet集合底层才有红黑树算法,会对存储的元素默认使用自然排序(从小到大). 注意: 必须保证TreeSet集合中的元素对象是相同的数据类型,否则报错.TreeSet的排序规则: 自然排序(从小到大): TreeSet调用集合元素的compareTo方法来比较元素的大小关系,然后讲集合元素按照升序排列(从小到大). 注意:要求TreeSet集合中元素得实现java.u...
2018-03-24 09:37:27 235
原创 Set实现类性能对比
Set接口的实现类: 共同的特点: 1):都不允许元素重复. 2):都不是线程安全的类. 解决方案:Set s = Collections.synchronizedSet(Set对象);HashSet: 不保证元素的先后添加顺序. 底层才有的是哈希表算法,查询效率极高. 判断两个对...
2018-03-24 09:37:17 726
原创 Map集合类
映射的数学解释:设A、B是两个非空集合,如果存在一个法则f,使得对A中的每个元素a,按法则f,在B中有唯一确定的元素b与之对应,则称f为从A到B的映射,记作f:A→B。映射关系(两个集合):A集合和B集合. A集合中的每一个元素都可以在B集合中找到唯一的一个值与之对应.严格上说,Map并不是集合,而是两个集合之间的映射关系(Map接口并没有继承于Collection接口...
2018-03-24 09:37:01 1182
原创 List和Set以及Map的选用
选用哪一种容器取决于每一种容器的存储特点以及当前业务的需求: List: 单一元素集合. 允许元素重复/记录元素的添加顺序.Set:单一元素集合. 不允许元素重复/不记录元素的添加顺序.既要不重复,又要保证先后顺序:LinkedHashSet.Map: 双元素集合. 如果存储数据的时候,还得给数据其为一个的一个名称,此时考虑使用Map....
2018-03-24 09:36:43 256
原创 集合的工具类
集合操作的工具类: 1):Arrays类: 2):Collections类.Arrays类: 在Collection接口中有一个方法叫toArray把集合转换为Object数组. 把集合转换为数组: Object[] arr = 集合对象.toArray(); 数组也可以转换为集合(List集合): public static List asLis...
2018-03-24 09:35:44 532
原创 LinkedHashSet类
List接口: 允许元素重复,记录先后添加顺序. Set接口: 不允许元素重复,不记录先后添加顺序. 需求: 不允许元素重复,但是需要保证先后添加的顺序. LinkedHashSet:底层才有哈希表和链表算法. 哈希表:来保证唯一性,.此时就是HashSet,在哈希表中元素没有
2018-03-22 20:31:15 126
原创 HashSet类
Set是Collection子接口,模拟了数学上的集的概念。Set集合存储特点: 1):不允许元素重复. 2):不会记录元素的先后添加顺序.Set只包含从Collection继承的方法,不过Set无法记住添加的顺序,不允许包含重复的元素。当试图添加两个相同元素进Set集合,添加操作失败,add()方法返回false。 Set判断两个对象是否相等用equals,而不是使用==。也
2018-03-22 20:29:33 264
原创 java中集合的迭代操作
集合的迭代操作: 把集合做的元素一个一个的遍历取出来.迭代器对象: Iterator: 迭代器对象,只能从上往下迭代. boolean hasNext(); 判断当前指针后是否有下一个元素 Object next():获取指针的下一个元素,并且移动指针. ListIterator: 是Iterator接口的子接口,支持双向迭代,从上往下
2018-03-22 20:25:05 1274
原创 Java集合框架-重构设计
根据Vector类,ArrayList类,LinkedList类所有具有的存储特点以及拥有的方法入手,发现共性就往上抽取. 共同的特点: 1):允许元素重复的. 2):会记录先后添加的顺序. 共同的方法: 如下图.根据他们的特点,我就可以指定规范: 遵循该规范的实现类,无论底层算法如何,都必须保证允许元素重复和保证添加先后顺序,我们给该规范起名:List.
2018-03-22 20:20:31 284
原创 List实现类性能和特点分析
面向接口编程: 接口类型 变量 = new 实现类();List list = new ArrayList();List实现类特点和性能分析:三者共同的特点(共同遵循的规范): 1):允许元素重复. 2):记录元素的先后添加顺序.Vector类: 底层才有数组结构算法,方法都使用了synchronized修饰,线程安全,但是性能相对于ArrayList较低.
2018-03-22 20:17:11 363
原创 java中LinkedList类的操作
LinkedList类是双向链表,单向队列,双向队列,栈的实现类: LinkedList类实现单向队列和双向队列的接口,自身提高了栈操作的方法,链表操作的方法. 在LinkedList类中存在很多方法,但是功能都是相同的.LinkedList表示了多种数据结构的实现,每一种数据结构的操作名字不同.面试题:编写一个双向链表.LinkedList类是线程不安全的类,在多线程环境下所有
2018-03-22 19:00:17 1794
原创 java中ArrayList类的操作
ArrayList类是Java集合框架出现之后用来取代Vector类的:二者底层原理都是基于数组的算法,一模一样.区别: Vector: 所有的方法都使用了synchronized修饰符. 线程安全但是性能较低. 适用于多线程环境. ArrayList:所有的方法都没有使用synchronized修饰符. 线程不安全但是性能较高. 即使以后在多线程环
2018-03-22 18:58:28 284
原创 java中stack集合框架
栈(Stack):数据结构的一种,存储特点:Last In First Out. Stack 类表示后进先出(LIFO)的对象栈. 栈结构在生活中的体现: 1):QQ消息. A,B,C三个人先后发送消息,我们查看的时候发现最顶上的是最新的消息. 2):手枪弹夹的装和发射: 要来实现栈的存储
2018-03-22 18:56:00 810
原创 Vector类
在JDK2之前(在Java的集合框架之前),要存储多个数据,此时存在一个叫Vector类.Vector类底层其实就是一个Object数组,Vector类中的方法是支持同步(方法使用synchronized修饰)的.Vector类设计原理,查看源代码: Vector类存储原理: 通过源码分析,发现在Vector类中有一个Object[]类型数组. 1):表面上把数据存储到Vector
2018-03-22 18:50:30 236
原创 Java集合框架-概述
Java集合框架的由来: 其实在Java2(jdk1.2)之前,Java是没有完整的集合框架的。它只有一些简单的可以自扩展的容器类,比如Vector,Stack,Hashtable等。 为什么存在容器类: 容器类(集合类)可以存储多个数据,既然数组可以存储多个数据,为什么需要定义容器类. 数组的弊端:
2018-03-22 18:46:31 242
原创 java中泛型学习总结
为什么需要使用泛型:1):存储任意类型的数据在集合中 ,但是取出来都是Object类型的,此时就得强转.List list = new ArrayList();list.add(1);//Interger类型Object ele = list.get(0);//现在需要调用Interger类中的方法Interger num = (Interger) ele;System.out.printl...
2018-03-21 23:39:46 3381
文本乱码识别工具包下载
2020-12-03
全国省市直辖市文档
2018-10-18
java需要用到的redis包
2018-10-15
json所需要的包
2018-10-15
jetty9分拆的各个包下载
2018-10-15
java用到的所有常用jar包(mysql、json、ssm、websocket...)
2018-10-12
web中常用api
2018-02-19
线性表定义与实现
2018-02-19
欧拉函数公式以及证明
2018-02-19
图论的课件
2018-02-19
动态规划ppt详解
2018-02-19
网络流初步
2018-02-19
Polya定理以及知识点详解
2018-02-19
treap代码实现
2018-02-19
ACM培训演讲稿
2018-02-19
Polya定理Polya定理Polya定理
2017-11-09
动态规划动态规划概念 最长上升子序列 最长公共子序列 矩阵连乘问题 背包问题 树形DP 状态压缩DP
2017-11-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人