摘要: Can you find it? Time Limit: 10000/3000 MS (Java/Others) Memory Limit: 32768/10000 K (Java/Others)Total Submission(s): 37762 Accepted Submission(s): 9 阅读全文
posted @ 2018-04-09 23:32 锦红 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 快速排序的话,说先要要用一个随机的函数rand(),解决好时间复杂度在最坏的情况下出现的o(n^2)的问题。 思想: 选择第i个数(由随机函数生成),如果后面的元素比这个元素小,i++,交还a【i】与a【j】; 然后分别递归,选择随机数的左边和右边。 阅读全文
posted @ 2018-04-08 18:32 锦红 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 我觉得要能独立写出某一个算法,就一定要在写代码之前有思路。时间复杂度(o(nlog(n))) 思路: 选择数组的中间值,对起左右进行递归,其中合并两个有序的数组,最后将放到tr数组中排序好的数重新放置到原数组中。 阅读全文
posted @ 2018-04-05 08:21 锦红 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换. 例1: 1 2 3 4 5 6 String str = "123"; try { int a = Integer.parseInt( 阅读全文
posted @ 2018-01-14 10:21 锦红 阅读(435) 评论(0) 推荐(0) 编辑
摘要: Bob写文章时喜欢将英文字母的大小写混用,例如Computer Science经常被他写成coMpUtEr scIeNce,这让他的英文老师十分苦恼,现在请你帮Bob的英文老师写一个程序能够将Bob的文章中的英文字母全部变成小写的。 Input 输入数据由多组数据组成。每组数据只有一行,表示Bob写 阅读全文
posted @ 2017-12-10 21:33 锦红 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 筛选法 求出n以内的素数,最快的应该是筛选法。 筛选法的思路是: 要求10000以内的素数,把1-10000都列出来,1不是素数,划掉;2是素数,所有2的倍数都不是素数,划掉;取出下一个幸存的数,划掉它的所有倍数;直到所有素数找完为止。 这种做法的空间复杂度是O(n),时间复杂度O(n/logn)。 阅读全文
posted @ 2017-12-10 11:00 锦红 阅读(1669) 评论(0) 推荐(1) 编辑
摘要: 方法分为两类: 一类是基于map的Entry;map.entrySet(); 一类是基于map的key;map.keySet() 而每一类都有两种遍历方式: a.利用迭代器 iterator; b.利用for-each循环; 代码举例如下: [java] view plaincopy package 阅读全文
posted @ 2017-12-07 09:55 锦红 阅读(388) 评论(0) 推荐(0) 编辑
摘要: a 符号 作用 —————————————————————————— %d 十进制有符号整数 %u 十进制无符号整数 %f 浮点数 %s 字符串 %c 单个字符 %p 指针的值 %e 指数形式的浮点数 %x, %X 无符号以十六进制表示的整数 %o 无符号以八进制表示的整数 %g 自动选择合适的表示 阅读全文
posted @ 2017-11-28 15:00 锦红 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 说明一下问题,什么是整数划分? n=m1+m2+...+mi; (其中mi为正整数,并且1 <= mi <= n),则{m1,m2,...,mi}为n的一个划分。 如果{m1,m2,...,mi}中的最大值不超过m,即max(m1,m2,...,mi)<=m,则称它属于n的一个m划分。这里我们记n的 阅读全文
posted @ 2017-11-28 14:16 锦红 阅读(10530) 评论(0) 推荐(3) 编辑