![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法设计
文章平均质量分 82
chengyingzhilian
这个作者很懒,什么都没留下…
展开
-
java算法:求分数序列和
时间限制: 1000ms 内存限制: 65536kB描述有一个分数序列 2/1,3/2,5/3,8/5,13/8,21/13,.... 求这个分数序列的前n项之和。输入输入有一行:正整数n。输出输出有一行:分数序列的和(浮点数,精确到小数点后4位)。可以printf("%.4lf\n", a)输出浮点数并精确到小数点后4位。样例输入99原创 2012-03-03 20:36:10 · 3430 阅读 · 1 评论 -
字符集合问题
编写一个Java应用程序,对于给定的一个字符串的集合,格式如: {aaa bbb ccc}, {bbb ddd},{eee fff},{ggg},{ddd hhh} 要求将其中交集不为空的集合合并,要求合并完成后的集合之间无交集,例如上例应输出: {aaa bbb ccc ddd hhh},{eee fff}, {ggg} (1)分析问题,描述你解决这个问原创 2012-05-11 14:02:03 · 957 阅读 · 0 评论 -
给出集合{0,1,2,3,4,5,6,7,8,9}的全排列从小到大的第1000000个的值
问题描述如下:“1,2,3的全排列是123 132 213 231 312 321,其全排列第3个的值为213,求{0,1,2,3,4,5,6,7,8,9}的全排列的第1000000个的值?” 我们可以知道{0,1,2,3,4,5,6,7,8,9}的全排列有10!个,如果要给出所有的全排列,那么昨天所说的Jhonson Trotter算法是比较高效的。在文章最后会给出其代码转载 2012-05-20 23:03:14 · 1903 阅读 · 0 评论 -
A*算法详解
http://www.java3z.com/cwbwebhome/article/article2/2825.html转载 2012-10-06 19:37:04 · 822 阅读 · 0 评论 -
java 23种设计模式【摘录】
1、工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。 2、建造模式:将产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。建造模式使得产品内部表象可以独立的变化,客户不必知道产品内部组成的细节。建造模式可以强原创 2012-10-08 08:59:55 · 1630 阅读 · 0 评论 -
sizeof的详解
一、sizeof的概念 sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。 它并不是函数。 sizeof操作符以字节形式给出了其操作数的存储大小。 操作数可以是一个表达式或括在括号内的类型名。 操作数的存储大小由操作数的类型决定。 二、sizeof的使用方法 1、用于数据类型转载 2012-10-09 10:38:38 · 822 阅读 · 0 评论 -
鸡尾酒排序
鸡尾酒排序 鸡尾酒排序又叫定向冒泡排序,来回排序,涟漪排序,搅拌排序,快乐小时排序,他其实是冒泡排序的一种变形。它和冒泡排序的不同之处就在于: 冒泡排序是单向进行的,而鸡尾酒排序是以双向在序列中进行排序的。如图所示:图示鸡尾酒排序过程鸡尾酒算法原理 i. 先对数组从左到右进行升序的冒泡排序; ii. 再对数组进行从转载 2012-10-12 17:58:58 · 1725 阅读 · 0 评论 -
Java词频统计算法(使用单词树)
许多英语培训机构(如新东方)都会出几本“高频词汇”的书,主要内容是统计近几年来各类外语考试中屡次出现的高频词汇,帮助考生减少需要背的生词的数量。但这些高频是如何被统计出来的呢?显然不会用手工去计算。假如我们已经将一篇文章存在一字符串(String)对象中,为了统计词汇出现频率,最简单直接的做法是另外建一个Map:key是单词,value是 次数。将文章从头读到尾,读到一个单词就到Map里查一下原创 2012-11-19 09:23:40 · 13228 阅读 · 1 评论 -
判断矩形相交以及求出相交的区域
问题:给定两个矩形A和B,矩形A的左上角坐标为(Xa1,Ya1),右下角坐标为(Xa2,Ya2),矩形B的左上角坐标为(Xb1,Yb1),右下角坐标为(Xb2,Yb2)。 (1)设计一个算法,确定两个矩形是否相交(即有重叠区域) (2)如果两个矩形相交,设计一个算法,求出相交的区域矩形(1) 对于这个问题,一般的思路就是判断一个矩形的原创 2013-03-13 09:33:12 · 2955 阅读 · 0 评论 -
第三届蓝桥杯java预赛第3题汉诺塔
3. 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。 大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上(可以借助第三根柱子做缓冲)。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘 如图是现代“山寨”版的该玩具。64个圆盘太多了,所以减为原创 2012-05-11 20:42:23 · 3680 阅读 · 1 评论 -
第三届蓝桥杯java预赛第4题
3. 某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。 每位选手都有一个起步的分数为10分。 某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)哪个题目答对了,哪个题目答错了吗? 如果把原创 2012-05-11 20:31:53 · 1541 阅读 · 0 评论 -
java算法:生日相同
时间限制: 1000ms 内存限制: 65536kB描述在一个有180人的大班级中,存在两个人生日相同的概率非常大,现给出每个学生的学号,出生月日。试找出所有生日相同的学生。输入第一行为整数n,表示有n个学生,n<100。此后每行包含一个字符串和两个整数,分别表示学生的学号(字符串长度小于10)和出生月(1<=m<=12)日(1<=d<=31)。学号、月、日之间用一个空格分隔。输出对每组生日相原创 2012-03-03 20:25:37 · 2523 阅读 · 0 评论 -
字节流与字符流的区别
字节流与和字符流的使用非常相似,两者除了操作代码上的不同之外,是否还有其他的不同呢?实际上字节流在操作时本身不会用到缓冲区(内存),是文件本身直接操作的,而字符流在操作时使用了缓冲区,通过缓冲区再操作文件,如图12-6所示。 (点击查看大图)图12-6 字节流与字符流操作的区别下面以两个写文件的操作为主进行比较,但是在操作时字节流和转载 2012-03-23 13:52:30 · 624 阅读 · 0 评论 -
arrays对中文排序
public static void main(String[] args) {fanhuiImpl aFanhuiImpl = new fanhuiImpl();aFanhuiImpl.ok("dd");String [] city={"泰安市","山东安市","山东省泰安市","山东省济南市","山东省泰安市","山东省青岛市","山东省泰安市","山东省肥城市","山东省原创 2012-03-09 18:52:21 · 774 阅读 · 0 评论 -
InputStream和Reader的区别
java.io下面有两个抽象类:InputStream和ReaderInputStream是表示字节输入流的所有类的超类Reader是用于读取字符流的抽象类InputStream提供的是字节流的读取,而非文本读取,这是和Reader类的根本区别。即用Reader读取出来的是char数组或者String ,使用InputStream读取出来的是byte数组。弄清了两个超类的根本区转载 2012-04-05 15:22:14 · 4101 阅读 · 0 评论 -
一步一步写算法(之 算法总结)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 自10月初编写算法系列的博客以来,陆陆续续以来写了几十篇。按照计划,还有三个部分的内容没有介绍,主要是(Dijkstra算法、二叉平衡树、红黑树)。这部分会在后面的博客补充完整。这里主要是做一个总结,有兴趣的朋友可以好好看看,欢迎大家提出宝贵意见。转载 2012-04-06 18:39:55 · 539 阅读 · 0 评论 -
一步一步写算法(之 最大公约数、最小公倍数)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 求解最小公倍数和最大公约数是我们开始编程的时候经常需要练习的题目。从题面上看,好像我们需要求解的是两个题目,但其实就是一个题目。那就是求最大公约数?为什么呢?我们可以假想这两个数m和n,假设m和n的最大公约数是a。那么我们可以这样写: m = b *a;转载 2012-04-06 18:40:46 · 627 阅读 · 0 评论 -
java 的复制集合对比
原创 2012-04-06 21:13:47 · 530 阅读 · 0 评论 -
Java文件读写操作大全
1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容 public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileNam转载 2012-05-09 18:34:49 · 550 阅读 · 0 评论 -
计算几何算法概览
一、引言 计算机的出现使得很多原本十分繁琐的工作得以大幅度简化,但是也有一些在人们直观看来很容易的问题却需要拿出一套并不简单的通用解决方案,比如几何问题。作为计算机科学的一个分支,计算几何主要研究解决几何问题的算法。在现代工程和数学领域,计算几何在图形学、机器人技术、超大规模集成电路设计和统计等诸多领域有着十分重要的应用。在本文中,我们将对计算几何常用的基本算法做一个全面的介绍,希望对您了解转载 2013-03-13 09:34:41 · 1020 阅读 · 0 评论