一天一个算法题
文章平均质量分 65
time_hunter
这个作者很懒,什么都没留下…
展开
-
一天一个算法题-简单的-递归-猴子吃桃问题
问题摘自>猴子第一天摘了若干桃子,当即吃了一半多一个,第二天又吃了剩下的一半多一个,以后每天都是吃了前一天剩下的一半多一个,到第10天还剩下一个桃子,问第一天摘了多少个桃子。关系:第n天桃子总数 - 第n天吃掉的桃子(第n天桃子总数/2 +1) = 第n+1天桃子总数。算法:package com.jue.rescursion;public class TestRecurs原创 2012-09-26 07:03:25 · 8528 阅读 · 0 评论 -
对二维数据的一种遍历
代码 public static void solve(String[][] datas, int rows, int cols, int offset) { boolean isReturn = isEnd(rows, cols, offset); if (isReturn) { return; } int row_index = offset; int原创 2016-12-08 11:01:41 · 375 阅读 · 0 评论 -
hunter学算法-非递归对于Fibonacci数列求值的优化
先上codeclass Test{ public static void main(String args[]) { int n = 45; long time1 = now(); System.out.print("fibonacci("+n+") = " + fibonacci(n) ); System.out.println(" cost原创 2013-07-15 22:48:40 · 750 阅读 · 0 评论 -
hunter学算法-链表的反转
题目:把一个单链表反转C语言解题#include #include typedef struct Node{ struct Node *next; int data;}Node,LinkedList;/** *链表的初始化 */LinkedList* init(){ Node* list = NULL; Node* currentNode = li原创 2013-06-25 22:45:06 · 588 阅读 · 0 评论 -
hunter学算法-判断两个链表相交于某结点
问题:如何判断两个链表相交于某结点?分析:图纸描述链表相交时候场景!发现相交与不相交的区别与特点!结论:发现相交的链表,相交点后面的结点都是相同的,通过简化,可以得出最后一个结点必是同一个结点。//=====================================================================原创 2013-07-11 23:17:25 · 542 阅读 · 0 评论 -
hunter学算法-从一个数组中找到和最大的子数组,数组中可能有负数。
题目:从一个数组中找到和最大的子数组,数组中可能有负数。想法:穷举法实现次问题,列出所有情况,进行比较记录!编写一个计算数组中某个范围内的和的方法。依次遍历所有的情况,记录最大值。C++实现如下://============================================================================// Name原创 2013-07-11 22:44:04 · 662 阅读 · 0 评论 -
一天一个算法题-简单的-递归
扫雷游戏,在点击某点A的时候,并且A是空白区域,那么他会直接打开一片。java的类似如下:package com.jue.rescursion;import java.util.HashMap;import java.util.Map;public class Box { private Map myMap= new HashMap(); private int[][] box原创 2012-09-25 00:59:15 · 782 阅读 · 0 评论 -
一天一个算法题-简单的-递归
递归的简单使用要点1.发现规律,哪些是被循环调用的。2.递归方法里,最开头,最首要的东西是结束递归的判断条件。例子package com.jue.recursion;public class TestRecursion { /** * @param args */ public static void main(String[] args) {原创 2012-09-24 00:00:09 · 488 阅读 · 0 评论 -
一天一个算法题-简单的-递归-计算球的落下
此题摘自>一个球从100米的高度自由落下,每次落地后反跳回原高度的一半再落下,求他在第10次落地的时候,共经过多少钱。1.已知要点:第一次落下时候经过的距离。2.上次的落下距离跟下一次的落下距离有一定关系。package com.jue.falldown;public class TestFallDown { /** * @param args */ publ原创 2012-09-29 23:57:55 · 1337 阅读 · 0 评论 -
一天一个算法题-简单的-递归-计算a+aa+aaa+...+aaaa...a的数值
例题摘自>题:计算a+aa+aaa+...+aaaa...a(x个a),其中a与x的值从键盘上输入,如输入a=1,x=3,相当于计算1+11+111注:1.找到aaaa的实现规律。2.找到a + aa+ aaa的实现。 package com.jue.addition;public class Testaddition { /** * @param args *原创 2012-09-29 02:36:39 · 2392 阅读 · 0 评论 -
一天一个算法题-简单的-求一个整数的反序列整数。
例如:现在有整数1234,输出4321整数,问题摘自>算法实现的不够好.package com.jue.numberreverse;public class NumberReverse { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated metho原创 2012-09-28 01:47:10 · 625 阅读 · 0 评论 -
一天一个算法题-简单的-递归-N的阶乘
数学公式:result = N!;设置结束条件相关:n=1java codepackage com.jue.recursion;public class TestRecursion2 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated me原创 2012-09-27 00:31:07 · 1114 阅读 · 0 评论 -
检查单链表中是否有环
单链表判断是否有环判断原理用两个指针,从头节点开始遍历,一个指针a每次走1步,一个指针b每次都2步。如果有环,两个指针相遇前b位于a后一位时,那么a,b指针下次相遇。b位于a后两位时,那么a,b指针下下次即将相遇。算法实现创建链表 public static Node createList(int max) { boolean原创 2016-11-27 12:42:40 · 373 阅读 · 0 评论