• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






dark_lake

 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

2013年5月11日

ProjectEuler 11
摘要: 对一个20*20的矩阵,求斜对角或者竖行或者横行连续4个数字的最大乘积思想:只会很笨的解法,读入文件到一个二维数组,然后对数组中的每个数字,进行4种可能的计算。。。官网没参考答案。。。代码:View Code 1 private static int gridproduct(String s) { 2 int product = 0; 3 int[][] a = readFile(s); 4 int rows = a.length; 5 int cols = a[0].length; 6 for (int i =... 阅读全文
posted @ 2013-05-11 22:03 dark_lake 阅读(191) 评论(0) 推荐(0)
 
KMP算法实现
摘要: 前面腾讯面试这题时,很多概念都搞混了,过来反省,好好研究了下KMP算法,把它实现。大体过程数据结构上都说得很明白,这里说说自己的感悟吧:主要是next数组的作用:现有一个主串s和模式串t,KMP算法会首先对模式串t求一个辅助数组next,有个这个next后我们每次匹配时主串的下标i就不用回溯,模式串的下标j回溯到next[j]的位置。看似next值越大越好,其实不是这样,next值当然是为0,为-1时最好。这个next数值k的意思表示当si!=tj时,那么tj-ktj-k+1...tj-1和主串的s0s1..sk-1是匹配的,那么其实需要回溯k位置,即主串回溯到i-k位置和t0比较。当然,由于 阅读全文
posted @ 2013-05-11 20:39 dark_lake 阅读(165) 评论(0) 推荐(0)
 
ProjectEuler 10
摘要: 求小于N的所有素数的和/** * The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17. * * Find the sum of all the primes below two million. */思路:个人只会傻逼的遍历判断这个数是否为素数,然后迭加,代码如下:View Code private static long sumPrime(int N) { if (N < 2) return 0; if (N == 2) return 2; l... 阅读全文
posted @ 2013-05-11 20:02 dark_lake 阅读(243) 评论(0) 推荐(0)
 
ProjectEuler 9
摘要: 求和为1000毕达哥斯加三元组,其实就是余弦定理的三个数。。。A Pythagorean triplet is a set of three natural numbers, a b c, for * which, * * a2 + b2 = c2 For example, 32 + 42 = 9 + 16 = 25 = 52. * * There exists exactly one Pythagorean triplet for which a + b + c = 1000. * Find the product abc.思路:这道题木有什么好的思路,个人只会遍历,官网的方法... 阅读全文
posted @ 2013-05-11 19:46 dark_lake 阅读(124) 评论(0) 推荐(0)