算法
qq_26498709
这个作者很懒,什么都没留下…
展开
-
用1,2,5组成和为100,求一共有多少种方式
首先是最笨的方法 然后是动态规划的思路 解释:原创 2017-10-18 20:22:10 · 2284 阅读 · 0 评论 -
java中的内存泄漏
内存泄漏原创 2017-12-11 20:33:16 · 116 阅读 · 0 评论 -
从100亿条记录的文本文件中取出重复数最多的前10条
场景哈希分治法 这是一个 ip 地址 127.0.0.1 假设有100亿个这样的 ip 地址存在文件中 这个文件大小大约是 100GB 问题:要统计出100亿个 ip 中,重复出现次数最多的前10个分析100GB 几乎不可能一次加载进内存进行操作,所以必须要拆分 那么可以利用分治的思想,把规模大的问题化小,然后解决各个小的问题,最后得出结果。实现思路ipv4 地址是一个 32 位的整数,原创 2017-11-03 10:04:24 · 10936 阅读 · 2 评论 -
动态规划求递增子序列
package com.neu.test12;import java.util.Scanner;public class test34 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = Integer.parseInt(sc.nextLi原创 2017-10-17 10:50:00 · 214 阅读 · 0 评论 -
求小球弹起高度
假设一个球从任意高度自由落下,每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时,共经历多少米?第5次反弹多高? /** * 统计出第5次落地时,共经过多少米? * * @param high 球的起始高度 * @return 英文字母的个数 */public static double getJourney(int high){ return 0;}/** *原创 2017-10-24 21:28:53 · 892 阅读 · 0 评论 -
有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?
这是一道斐波拉契数列题目,很自然会想到使用递归f(n)=f(n-1)+f(n-2),但是使用递归的方式 会导致很多重复计算,因此,可以用第二种方法:用组数保存已经计算过的数值,当后面计算需 要使用前面的值时,可以直接从数组内取,方法如下:package com.neu.test12;import java.util.Scanner;public class 统计兔子数 { public s原创 2017-10-24 20:49:56 · 5444 阅读 · 0 评论 -
01背包问题
public class test26 { public static void main(String[] args) { int m = 10; int n = 3; int[] w = {0, 3, 4, 5 }; int[] p = {0, 4, 5, 6 }; int c[][] = BackPack_So原创 2017-10-15 15:21:55 · 133 阅读 · 0 评论 -
从1900年1月1日(星期一),开始经过的n年当中,没个月的13号这一天是星期一,星期二,星期三...星期日的次数分别是多少
输入1,输出1,3,1,2,2,2,1package com.neu.test13;import java.util.Scanner;public class test04 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = Integer原创 2017-10-23 21:50:54 · 4829 阅读 · 0 评论 -
无序数组的二分查找
public class 无序数组的二分查找 { }原创 2017-10-11 22:40:22 · 1723 阅读 · 1 评论 -
快速排序
public class 快排 {public static void main(String[] args) { int numbers[] = {10,20,15,0,6,7,2,1,-5,55}; quickSort(numbers, 0, numbers.length - 1); for (int i = 0; i < numbers.length; i++) {原创 2017-10-13 23:12:14 · 123 阅读 · 0 评论 -
求最大回文子串(马拉车算法)
这是正常的马拉车算法import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextLine()) { String s = in.n原创 2017-10-22 19:15:36 · 307 阅读 · 0 评论 -
全排列
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2017-10-10 19:51:10 · 157 阅读 · 0 评论 -
全组合
public class 全组合 {public static void main(String[] args) { char[] s = {'a','b','c'}; Combaine(s);} public static void Combaine(char []s){ int len = s.length; int n = 1<<len; f原创 2017-10-10 20:35:59 · 226 阅读 · 0 评论 -
找出文件中的兄弟子串(要用hashmap实现)
public class 兄弟子串{ }原创 2017-10-11 21:54:52 · 331 阅读 · 0 评论 -
汉字转化数字,如一百二十三转化成123
public class 汉字转数字 { }原创 2017-10-11 21:56:27 · 2352 阅读 · 2 评论 -
冒泡排序
public class 冒泡 {public static void main(String[] args) { int score[] = {6,3,8,2,9,1}; BubbleSort(score);}public static void BubbleSort(int[] score){ System.out.println("冒泡前:"); for (原创 2017-10-11 23:06:15 · 149 阅读 · 0 评论 -
DP动态规划
https://www.cnblogs.com/wuyuegb2312/p/3281264.html#q3a1硬币找零假设有几种硬币,如1、3、5,并且数量无限。请找出能够组成某个数目的找零所使用最少的硬币数动态规划的基本思想是将待求解问题分解成若干个子问题,先求解子问题,并将这些子问题的解保存起来,如果以后在求解较大子问题的时候需要用到这些子问题的解,就可以直接取出这些已经计算过的解...原创 2018-10-04 15:46:04 · 814 阅读 · 1 评论