算法
Fuzz_
这个作者很懒,什么都没留下…
展开
-
用for循环实现斐波那契数列
斐波那契数列指的是这样一个数列1, 1, 2, 3, 5, 8, 13, 21, 34........斐波那契数列特别指出:第1项是第一个1。这个数列从第3项开始,每一项都等于前两项之和。下面我们来实现这个数列public static void main(String[] args) { fibonaccl(10);} static void fibonaccl(int n) {...原创 2018-07-09 19:57:51 · 34726 阅读 · 0 评论 -
一个数组的最大子串和
给出一个int类型的数组,如-2,-4,-7,-20,1,1,1,1,-10,1,1,1,5,-10,10,10,10,-25,10,10,10,10,10,10,-300这个数组的每个子串值相比较,很明显,最大的是由 10 10 10 -25 10 10 10 10 10 10组成的值为65的值。然后我们有两种方法具体实现,第一种,它是O(n2)方级的,这种就和九九乘法表一样,用第一个子串去挨个...原创 2018-07-10 18:58:41 · 1158 阅读 · 0 评论 -
打印出水仙花数
水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。下面我们分为两个算法,一个是判断是否为水仙花数,...原创 2018-07-17 12:44:40 · 419 阅读 · 0 评论 -
Java打印实心菱形,空心菱形
我们用*号来填充菱形首先,要想打印出菱形,我们先要对菱形有点认知,首先,菱形是四边相等的图形,只要四边相等,就是菱形,我们这里只说明竖着打印实心菱形和空心菱形。实心菱形:public static void printHollowRhombus(int size) { //首先,菱形的行数不能为偶数,因为偶数行不能 构成菱形 if(size % 2 == 0) { ...原创 2018-07-15 17:38:22 · 1829 阅读 · 0 评论 -
Java从上往下, 从右向左斜着打印二维数组
我们随便定义一个二维数组:int[][] arr = {{0,1,2,3,4}, {0,1,2,3,4}, {0,1,2,3,4}, {0,1,2,3,4}, {0,1,2,3,4}, {0,1,2,3,4}, {...原创 2018-07-21 16:11:15 · 2341 阅读 · 0 评论 -
A + B 问题(给定两个数,求两个数的和,不能使用+号)
要实现不能用加号求两个数的和,我们可以用位运算符。我们先来代码:static int add(int a, int b){ //思路: a+b=a^b + (a&b)<<1;其中a^b是不考虑进位的加. //只有位相同才有进位所以(a&b)<<1则是进位的值, //每进行一次操作,进位末尾补0,也就是说,最多进行b的二进制位...原创 2018-07-22 17:40:17 · 1050 阅读 · 0 评论 -
尾部的零(设计一个算法,计算出n阶乘中尾部零的个数)
这里我们知道,大家最平常的思维就是用一个数来接收n阶乘后的数,然后再来判断那个和的尾部的0的个数,这样的算法算得上O(n)级,还有一个隐患,就是就算用long来存储数据,也不会太长,20的阶乘都不好估计就崩了,所以这种算法不可取。我们这次来实现一个O(n/5)的算法,这个算法比较好理解。我们可以知道,n的阶乘的尾部为0的个数主要取决于其中5的个数,例如看下面这个图 其实也就是寻找5...原创 2018-07-22 18:25:52 · 2855 阅读 · 1 评论 -
Java多线程简单样例(一):银行存取钱问题
Bank类 public class Bank { private static int money; public int getMoney(){ return money; } public void saveMoney(int m){ synchronized (this) { System.o...原创 2018-10-05 16:20:29 · 6558 阅读 · 1 评论 -
Java多线程简单样例(二):使用lock锁的生产者消费者问题
import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 生产者消费者模式 * @author fliay * */public class TestProdu...原创 2018-10-05 16:23:58 · 219 阅读 · 0 评论