Java算法
OliverZang
这个作者很懒,什么都没留下…
展开
-
Java:算法 - 求正整数阶乘n!
数学公式:n!=1 * 2 * 3…(n-2) * (n-1) * n应用方面:伽玛函数与排列组合递归实现代码:public static long fac(int n){ if(n == 0 || n ==1) return 1; else return n*fac(n-1);}分析:n > 1时,该函数每...原创 2018-12-12 22:12:45 · 1244 阅读 · 0 评论 -
leetcode 2. Add Two Numbers
You are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return i...原创 2019-01-27 16:52:18 · 286 阅读 · 0 评论 -
leetcode 1. Two Sum
given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the same e...原创 2019-01-24 14:16:31 · 380 阅读 · 0 评论 -
Java:"JOJO, 我不用控制台啦", 网友:谁去拿外卖?
背景:DIO想当吃播网红,嚷嚷着要JOJO去拿外卖,JOJO不服,让DIO写个投票小程序,在网友的见证下直播投票来决定谁去拿外卖。首先,JOJO仿照饿了么提出了需求。需求:按空格生成0-99的随机整数,当前最小的数被高亮并标记为“喂人民服务”。数字输出界面最多显示当前的10个数,且最小数总是显示在界面上的。分析:主要是显示容器的选择,这里选择java.swing.JFrame来做界面容器,添加...原创 2019-01-06 15:38:41 · 564 阅读 · 1 评论 -
java:算法 - 统计字符
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。程序分析:使用String.matches(regex)来判断字符串中每个字符的种类/* *given a input of String, count statistics. *the return array of 2 dimension gives such statistics as * the ...原创 2019-01-01 22:50:20 · 326 阅读 · 0 评论 -
java:算法 - 水仙花数
题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。package com.oz.algorithm原创 2018-12-26 12:10:15 · 354 阅读 · 0 评论 -
Java:算法 - Yoshi Island Tax Calculator
一道考继承注意事项的算法填充题,按要求编写TaxCalculator的子类完成构造器和方法题目:/*** This class should calculate the tax on an item* sold to somewhere on Yoshi's Island. On Yoshi's* Island, the tax rate is 7% (0.07) plus a flat...原创 2018-12-03 22:08:13 · 330 阅读 · 0 评论 -
java:算法 - 压缩字符 如何输入aaabbcaa,输出a3b2ca2
/* * 写一个函数把连续字符串压缩,无需考虑编码 * 输入“aaabbcaa” 输出“a3b2ca2” * 输入“a” 输出“a” */public class ZipLetters{public static void main(String args[]){ zipLetters("aaabbcaa"); zipLetters(&am原创 2018-11-29 20:08:12 · 1110 阅读 · 0 评论 -
Java:算法 - 整数区间求素数
题目:判断101-200之间有多少个素数,并输出所有素数。程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。吐槽:简单的题,想仔细需要的参数,逻辑,边界控制,争取一次写对。代码:package com.oz.algorithm;import java.util.ArrayList;import java.util.List...原创 2018-12-25 11:32:04 · 501 阅读 · 0 评论 -
Java:算法 - 开局一对兔,两月就成熟
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?程序分析:哇是斐波那契数列1,1,2,3,5,8,13,21… 用递归fn = fn-1 +fn-2吐槽:题干别读成小兔子长到第三个月后(的第四个月)又生了一对兔子,这样递归会变成fn = fn-2+fn-3+fn-4…,小兔子是2周月就成熟!递...原创 2018-12-24 16:56:06 · 371 阅读 · 0 评论 -
java:算法 - 正整数分解质因数
题目:将一个正整数分解质因数。例如:输入90,打印出90=233*5。程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。(3)如果n不能被k整除,则用k+1作为k的值,重复执行...原创 2018-12-27 14:16:49 · 401 阅读 · 0 评论 -
Java:算法 - 手动实现双向链表中的增插删改
1. 前言:先来复习下链表的概念:物理结构计算机的物理存储结构有两种:{顺序,链式} 物理存储结构 定义 存取速率 插入删除速率(给定地址) 插入删除速率(给定值) 空间占用 空间利用率 链式 数据存储在地址随机的物理存储单元 低 高 中 高 高 顺序 数据存储在地址连续的物理存储单元 高 中 ...原创 2018-12-20 18:22:06 · 282 阅读 · 0 评论 -
Java:算法 - 小米面试题:一副从1到n的牌...求输出牌堆的顺序数组
一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手机没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组先逆向求解:1)正过来做一遍,假设1到n的牌是顺序从1到n的数组a,每次…,求最后牌桌上的数组bimport java.util.*;public class PracJava{ public static void calculate(i...原创 2018-12-13 20:51:04 · 1155 阅读 · 0 评论 -
Java: 算法 - 1,2,3,4 取3个数组成三位数字,求能排列组合数量,并将它们打印出来
涉及数学公式:Anm=n!(n−m)!A^m_n=\frac{n!}{(n-m)!}Anm=(n−m)!n! (n个数取m个排列组合) permutation and combinationCnm=n!m!(n−m)!C^m_n=\frac{n!}{m!(n-m)!}Cnm=m!(n−m)!n! (n个数取m个组合) combination分析1,2,3,4取3个数字排列组合...原创 2018-12-13 12:37:43 · 7994 阅读 · 0 评论 -
leetcode 175. Combine Two Tables
Table: Person+-------------+---------+| Column Name | Type |+-------------+---------+| PersonId | int || FirstName | varchar || LastName | varchar |+-------------+---------+Per...原创 2019-01-27 17:42:30 · 270 阅读 · 0 评论