算法初探
泽阳ZMQ
这个作者很懒,什么都没留下…
展开
-
每天一道算法--经典兔子繁殖迭代问题(斐波那契数列)
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21…. 由规律可知: f(x) = f(x-1)+f(x-2) 符合斐波那契数列(斐波那契数列系数就由之前的两数相加)public class Rabbit { priv原创 2016-05-29 09:29:19 · 11325 阅读 · 2 评论 -
二分法查找有序数组
求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数(不会改变)。 例如:2+22+222+2222+22222(n=5)此时a=2,n由键盘输入。package com.calculate;import java.util.Scanner;public class Sumloop { private static void count(int a,int n){原创 2016-06-22 09:36:32 · 395 阅读 · 0 评论 -
自由落体球
一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米?public class FreeFallingBall { private static void ball(){ double t = 100; double s = 100; for(int i=1;i<=10;i++原创 2016-06-04 18:40:21 · 489 阅读 · 0 评论 -
关于2的问题
求Sn=a+aa+aaa+…+aa…aaa(有n个a)之值,其中a是一个数(不会改变)。 例如:2+22+222+2222+22222(n=5)此时a=2,n由键盘输入。package com.calculate;import java.util.Scanner;public class Sumloop { private static void count(int a,int n){原创 2016-06-04 11:05:37 · 388 阅读 · 0 评论 -
数列求和
public class TwentiethFractionSum {/** * 一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列`这里写代码片`的前20项之和 * @param n 项数 */private static void numberSum(int n){ int x = 2; int y = 1; int t = 0;原创 2016-06-03 16:49:23 · 427 阅读 · 0 评论 -
经典算法-兵兵球比赛
public class PingPong { /** * 题目:两个乒乓球队进行比赛,各出三人。 * 甲队为a,b,c三人,乙队为x,y,z三人。 * 已抽签决定比赛名单。有人向队员打听比赛的名单。 * a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。 */ private static void pingPon原创 2016-05-31 11:10:32 · 1917 阅读 · 0 评论 -
猴子吃桃-倒推法
/** * 猴子吃桃子问题: * 猴子第一天摘下N个桃子,当时就吃了一半,还不过瘾,就又吃了一个。 * 第二天又将剩下的桃子吃掉一半,又多吃了一个。 * 以后每天都吃前一天剩下的一半零一个。 * 到第10天在想吃的时候就剩一个桃子了, * 求第一天共摘下来多少个桃子? * 思路:倒推,第9天吃的剩下1个,第8天(f(9)+1)2, 第7天 (f(8)+1)*2,第1天原创 2016-05-30 10:11:48 · 1149 阅读 · 0 评论 -
经典冒泡排序,数值升序排列
public class Order { // 数值从小到大排序 /* 1,冒泡排序 */private static int[] array = new int[] { 1, 2, 9, 5, 6, 7, 0, 10 };private static int[] order(int[] array) { int temp; //设置中间值 int si原创 2016-05-29 11:08:25 · 539 阅读 · 0 评论 -
最大公约数
public class Gcb {private static int gcb(int a,int b){ if(a%b==0){ return b; }else{ return gcb(b, a%b); }}public static void main(String[] args) { System.out.println("输原创 2016-05-29 10:50:19 · 408 阅读 · 0 评论 -
选择排序
public static int[] choice(int[] array){ for(int i=0;i<array.length;i++){ int min = i;//定义最小的位置 for(int j=i+1;j<array.length;j++){ if(array[min] > array[原创 2016-06-22 10:16:13 · 354 阅读 · 0 评论