Java
文章平均质量分 73
漫漫求索l
这个作者很懒,什么都没留下…
展开
-
CCF20150303节日
问题描述试题编号:201503-3试题名称:节日时间限制:1.0s内存限制:256.0MB问题描述:问题描述 有一类节日的日期并不是固定的,而是以“a月的第b个星期c”的形式定下来的,比如说母亲节就定为每年的五月的第二个星期日。 现在,给你a,b,c和y1,原创 2017-10-21 21:30:04 · 265 阅读 · 0 评论 -
(转)图解排序算法(四)之归并排序
图解排序算法(四)之归并排序基本思想 归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案"修补"在一起,即分而治之)。分而治之 可以看到这种结构很像一棵完全二叉树,本文的归并排序我们采用递归去实现(也可采...转载 2018-05-25 17:16:25 · 214 阅读 · 0 评论 -
(转)图解排序算法(二)之希尔排序
图解排序算法(二)之希尔排序 希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破O(n2)的第一批算法之一。本文会以图解的方式详细介绍希尔排序的基本思想及其代码实现。基本思想 希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少...转载 2018-05-25 17:15:33 · 294 阅读 · 0 评论 -
(转)图解排序算法(一)之3种简单排序(选择,冒泡,直接插入)
图解排序算法(一)之3种简单排序(选择,冒泡,直接插入) 排序是数据处理中十分常见且核心的操作,虽说实际项目开发中很小几率会需要我们手动实现,毕竟每种语言的类库中都有n多种关于排序算法的实现。但是了解这些精妙的思想对我们还是大有裨益的。本文简单温习下最基础的三类算法:选择,冒泡,插入。 先定义个交换数组元素的函数,供排序时调用 /** * 交换数组元素 * @param...转载 2018-05-25 17:14:33 · 245 阅读 · 0 评论 -
(转)图解排序算法(三)之堆排序
图解排序算法(三)之堆排序预备知识堆排序 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。堆 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。如下图:同时,我们对堆中的结点按层进行编号...转载 2018-05-25 17:13:29 · 201 阅读 · 0 评论 -
最大子矩阵问题
【算法设计】最大子矩阵问题出自http://www.cnblogs.com/JPAORM/archive/2012/04/23/2510005.html一,最大子矩阵问题: 给定一个n*n(0<n<=100)的矩阵,请找到此矩阵的一个子矩阵,并且此子矩阵的各个元素的和最大,输出这个最大的值。Example: 0 -2 -7 0 9 2 -6 2 -4 1 -4 ...转载 2018-04-04 10:06:14 · 1066 阅读 · 0 评论 -
ccf20141202 Z字形扫描
试题编号:201412-2试题名称:Z字形扫描时间限制:2.0s内存限制:256.0MB问题描述:问题描述 在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示: 对于下面的4×4的矩阵, 1 5 3 9 3 7 5 6 9 4 6 4 7 3 1 3 对其进行Z字形扫描后得到长度为16的序列: 1 ...原创 2018-03-12 21:04:18 · 285 阅读 · 0 评论 -
希尔排序
1、基本思想:希尔排序也成为“缩小增量排序”,其基本原理是,现将待排序的数组元素分成多个子序列,使得每个子序列的元素个数相对较少,然后对各个子序列分别进行直接插入排序,待整个待排序列“基本有序”后,最后在对所有元素进行一次直接插入排序。因此,我们要采用跳跃分割的策略:将相距某个“增量”的记录组成一个子序列,这样才能保证在子序列内分别进行直接插入排序后得到的结果是基本有序而不是局部有序。希尔排序是对...原创 2018-03-12 09:38:41 · 213 阅读 · 0 评论 -
字符串排序按长度,长度相同按字典排序
题目描述先输入你要输入的字符串的个数。然后换行输入该组字符串。每个字符串以回车结束,每个字符串少于一百个字符。 如果在输入过程中输入的一个字符串为“stop”,也结束输入。 然后将这输入的该组字符串按每个字符串的长度,由小到大排序,按排序结果输出字符串。输入描述:字符串的个数,以及该组字符串。每个字符串以‘\n’结束。如果输入字符串为“stop”,也结束输入.输出描述:可能有多组测试数据,对于每组...原创 2018-02-10 00:23:55 · 5401 阅读 · 0 评论 -
java 求一个数的质因数
import java.util.Scanner;//按照素数来计算,for循环到Math.sqrt(n),减少了循环次数,防止超时public class 质因数 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); while(sc.hasNext()){ ...原创 2018-02-10 00:22:27 · 4142 阅读 · 0 评论 -
java list remove的问题
以字符串去除特定字符这个例子来解释:import java.util.*;public class 字符串去除特定字符 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); List<Character&g...原创 2018-02-10 00:09:45 · 494 阅读 · 0 评论 -
CCF201703-3Markdown
Markdown 是一种很流行的轻量级标记语言(lightweight markup language),广泛用于撰写带格式的文档。例如以下这段文本就是用 Markdown 的语法写成的: 这些用 Markdown 写成的文本,尽管本身是纯文本格式,然而读者可以很容易地看出它的文档结构。同时,还有很多工具可以自动把 Markdown 文本转换成 HTML 甚至 Word、PDF原创 2017-11-25 13:53:16 · 343 阅读 · 0 评论 -
java读取文件
转载----这个方法考虑到了中文,即时Eclipse默认设置为utf-8也可以很好的执行java读取txt文件内容。可以作如下理解:首先获得一个文件句柄。File file = new File(); file即为文件句柄。两人之间连通电话网络了。接下来可以开始打电话了。通过这条线路读取甲方的信息:new FileInputStream(file) 目前这个信息已经读进转载 2017-10-20 10:39:20 · 360 阅读 · 0 评论 -
Tomcat9.0安装
本文转自:http://blog.sina.com.cn/s/blog_15126e2170102w5o8.html 一、JDK的安装与配置1、从官网下载jdk,注意是jdk不是jre。最好从官网下载,也可以直接度娘。2、下载完毕后,安装jdk,直接按照安装向导的提示安装即可,安装时可以自己选择安装路径,我的安装路径是C:\Program Files\Java\jdk1.转载 2017-11-04 14:29:59 · 1199 阅读 · 0 评论 -
Java的next() nextLine()的区别
做CCF20150903模板自动生成系统的时候遇到一个坑,刚开始以为是程序逻辑问题,改来改去,直到后面发现原来是nextInt()的坑,这里特别总结一下next(),nextLine(),nextInt(),nextFloat(),nextDouble(),希望对大家有所帮助~ 很多书上会介绍next(),nextLine()不会像下面这篇博主这么详细:参考下博主的成果原创 2017-11-05 16:09:43 · 528 阅读 · 0 评论 -
LeetCode239. 滑动窗口最大值
给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口 k 内的数字。滑动窗口每次只向右移动一位。返回滑动窗口最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值--------------- ...原创 2018-05-16 10:17:36 · 709 阅读 · 0 评论