自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (3)
  • 收藏
  • 关注

原创 java中Collections的两种排序方法

在编程中时不时需要进行排序,在java中有内置的函数可以简便高效地进行排序,这就是Collections.sort方法。这个方法有两个重载版本,一个是只有一个参数的List,此时要求这个列表的所有对象都是可以比较的。也就是说需要实现Comparable接口,同时实现接口下的compareTo函数。另一个sort方法有两个参数:List和Comparator。此时不要求List中的对象实现Compa

2016-04-16 20:55:16 1169

原创 java中序列化和反序列化

Serializable(序列化)是java中的一个接口,通过让类实现这个接口,可以保存对象的状态。序列化有以下几个知识点:1. 序列化只会保存对象的变量信息,不会保存对象的方法信息2. 如果父类实现了Serializable接口,则子类默认实现了Serializable接口,即使子类没有声明也一样。3. 当对象被序列化时,如果对象包含了对其他对象的引用,则其他对象也会被序列化。比如说

2016-04-15 16:43:23 412

原创 java中finally关键字

异常处理是大多数编程语言需要遇到的问题,java中的try-catch块和C++差不多,但是java中却多了一个finally块。这个块无论异常是否发生都会执行。但是如果在try块中或者在catch块中有return 语句,那会先执行return语句吗?答案是否定的,程序会先执行finally语句块,然后再执行try块或catch块的return语句(这里先假设finally块中没有return语

2016-04-14 16:22:16 631

原创 结构体内存对齐

最近,在做题时遇到了结构体内存对齐的问题,发现这是我的一个盲点。于是上网搜集资料补一下这方面的知识。        结构体是一种数据结构,其可以容纳多种不同的数据类型。但是对于这些数据类型,其有一点要求,就是要求数据内存对齐。也就是说,结构体的内存对齐不是对所有数据类型所占的空间字节数的简单相加,而是允许有一定的浪费,但是这样做却换来了访问数据的高效性,也就是俗称的以空间换时间。

2015-03-30 19:20:50 555

原创 sicily1172 Queens, Knights and Pawns

题目链接:http://soj.sysu.edu.cn/1172题目大意:在一个棋盘上,放这皇后、骑士和兵三种棋子。其中皇后有八个方向可以占位(即在该方向上的位置不能再放棋子),但是其遇到任何的另一个棋子,其在该方向上的在两个棋子外的部分将不会被占位,比如:一个4*4的棋盘,有一个骑士在(1,2),有一个皇后在(1,4)那么(1,1)将不会被皇后占位;对于骑士,其占位的方向是“日”字型的,即2

2014-12-17 00:10:31 619

原创 sicily1818 成绩转换

题目链接:http://soj.sysu.edu.cn/1818题目大意:给出多组学生与成绩的对应数据,要求判断输入的学生的成绩等级,如果有相同名字的,就输出最后一个学生的成绩等级解题思路:用map存储学生名字与成绩的对应表。此处虽然时间限制是5s,但是仍然不能简单地用两个数组分别存储名字和分数然后再遍历,否则还是会超时。#include #include #include

2014-12-09 12:25:32 469

原创 sicily1121 Tri Tiling

sicily1121 Tri Tiling题目链接:http://soj.sysu.edu.cn/1121题目大意:求用 2 * 1 的矩形拼成 3 * n(0 解题思路:动态规划。首先根据题意我们可以知道,当 n 为奇数时,3 * n为奇数,即所得的矩形面积为奇数,而用 k 个小矩形拼凑而成的矩形所得面积为 2 * 1 * k,是偶数,故当n为奇数时,是无法找到这样的构造方案的,即其方案数为 0。接下来考虑偶数的情况,当

2014-12-06 15:56:48 605

原创 sicily1240 Faulty Odometer

题目链接:http://soj.me/1240题目大意:假设有

2014-11-23 18:41:03 628

原创 sicily1231 The Embarrassed Cryptography

题目链接:http://soj.me/1231题目大意:给出一个(大)整数(是)

2014-11-23 16:34:02 529

原创 sicily1259 Sum of Consecutive Primes

题目链接:http://soj.sysu.edu.cn/1259题目大意:给出一个小于10000的数 n ,要求求出 m 个连续素数和等于 n 的表达式的总个数解题思路:题目规模小,可以直接暴力解决。先找出小于10000的所有素数,然后用两层循环遍历这些素数解决。#include #include using namespace std;int prime[10000];

2014-11-21 19:49:37 500

原创 sicily1119 Factstone Benchmark

题目链接:http://soj.sysu.edu.cn/1119题目大意:假设1960年的计算机是4-bit,以后每隔10年就翻一翻,比如1970年是8-bit,1980年是16-bit。现在给出一个年份 y,1960解题思路:两边取对数后比较。刚开始以为挺简单的,直接比较 n! 和 2^k 即可,然而,在计算时发现会出现 2^(2^22),这数值太大,无法表示,然后就想到了用高精度乘

2014-11-19 21:37:32 519

原创 sicily1034 Forest

题目链接:http://soj.sysu.edu.cn/1034题目大意:给定一个森林,判断该森林是否合法。如果不合法输出INVALID,如果合法输出森林的深度和宽度。解题思路:对合法的森林构建一棵树,对该树按照广度优先搜索进行遍历,遍历每一层时把下一层的节点数算出来与maxwidth进行比较,把最大值赋给maxwidth从而算出森林宽度。而深度则相对比较简单,只需从根节点遍历到结束,遍历

2014-11-04 00:33:53 1012

原创 sicily1017 Rate of Return

题目链接:http://soj.sysu.edu.cn/1017题目大意:给定一组数据,表示在第几个月存进多少钱,然后给出第 k (1解题思路:用二分法求解方程的近似根。由于题目只要求输出 5 位小数的值,对精度要求不高,故只需大概循环100次就能获得一个比较满意的近似根#include #include int n, month[13];double money[13],

2014-11-03 18:54:18 560

原创 sicily1029 Rabbit

题目链接:http://soj.me/1029

2014-11-03 00:20:56 885

原创 sicily1201 01000001

题目链接:http://soj.me/1201题目大意:输入两个

2014-10-21 23:28:10 726

原创 sicily1052 Candy Sharing Game

题目链接:http://soj.me/1052题目大意:有N

2014-10-21 20:58:27 524

原创 有限自动机NFA-ε到NFA再到DFA的转换

DFA(Deterministic Finite Au)

2014-10-16 19:37:20 20637 4

词法分析器jflex-1.6.0版本

jflex是用java语音写的词法分析器,其相比flex而言更加简单,能有助于理解编译原理中的词法分析部分

2014-12-10

谷歌浏览器54.0.2840.71 m (64-bit)

谷歌浏览器离线安装包,54.0.2840.71 m (64-bit)。 注意:安装后需要更新adobe flash for chrome到最新版本,这样才不会在部分网页中出现弹窗说flash版本过低

2016-10-29

Devcpp编程软件

Devcpp是一款轻量级的C++的编程软件,其简单易操作,对于编程新手来说,这是一个不错的选择

2014-12-10

空空如也

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

TA关注的人

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