算法
txxs
这个作者很懒,什么都没留下…
展开
-
房贷计算算法
/** * Description:等额本金工具类 */import com.google.common.collect.Maps;import java.math.BigDecimal;import java.util.HashMap;import java.util.Map;import java.util.Set;/** * 等额本金是指一种贷款的还款方式,是在还款期内把贷款数总额等分,每月偿还同等数额的本金和剩余贷款在该月所产生的利息,这样由于每月的还款本金额固定, * .原创 2021-10-10 17:59:23 · 351 阅读 · 0 评论 -
Java基本排序整理
冒泡排序,基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。public class bubbleSort { public bubbleSort(){ int a[]={49,38,65,97,76,13,27,49,...原创 2016-09-18 20:01:59 · 354 阅读 · 0 评论 -
求树的最大宽度和最大深度
原文地址:http://blog.csdn.net/salahelx/article/details/46727499二叉树深度:这个可以使用递归,分别求出左子树的深度、右子树的深度,两个深度的较大值+1即可。private static int getHeight(BiNode head) { if(head==null) //结束转载 2016-09-17 17:35:40 · 2875 阅读 · 0 评论 -
Java 两个栈实现队列和两个队列实现栈
两个队列实现栈:package test;import java.util.Stack;public class TwoStackQueue { public Stack stackPush; public Stack stackPop; public TwoStackQueue(){ stackPush = new Stack(); stackPop = new原创 2016-09-04 12:27:06 · 590 阅读 · 0 评论 -
Java-字符串-coder的排序
牛客上的一个题目:请设计一个高效算法,再给定的字符串数组中,找到包含"Coder"的字符串(不区分大小写),并将其作为一个新的数组返回。结果字符串的顺序按照"Coder"出现的次数递减排列,若两个串中"Coder"出现的次数相同,则保持他们在原数组中的位置关系。给定一个字符串数组A和它的大小n,请返回结果数组。保证原数组大小小于等于300,其中每个串的长度小于等于200。同时保证一原创 2016-08-22 17:18:54 · 557 阅读 · 0 评论 -
Leetcode – 树的遍历总结(java)
前序遍历前序二叉树遍历是树的经典面试题,解决这个问题的关键是要了解:1、什么是前序遍历(访问孩子前先访问父节点)?2、使用java核心库的Stack。对于一些奇怪的例子前序遍历不是很明显。但是如果使用栈来写这个程序,每个元素如何压入和弹出的就很明显了。解决这个问题的关键是使用栈来存储左右孩子,首先压入右孩子,这样就可以处理完左孩子后处理它。public class TreeNode {原创 2015-11-19 10:47:59 · 1070 阅读 · 0 评论 -
leetcode 223: Rectangle Area
Find the total area covered by two rectilinear rectangles in a 2D plane.Each rectangle is defined by its bottom left corner and top right corner as shown in the figure.Assume that the total原创 2016-01-02 19:53:40 · 540 阅读 · 0 评论 -
Missing Number
Given an array containing n distinct numbers taken from 0, 1, 2, ..., n, find the one that is missing from the array.For example,Given nums = [0, 1, 3] return 2.Note:Your algorithm should ru原创 2016-01-21 20:02:40 · 497 阅读 · 0 评论 -
LeetCode – Two Sum (Java)
Given an array of integers, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two numbers such that they add up to the target, where原创 2016-01-07 23:40:10 · 466 阅读 · 0 评论 -
Longest Substring Without Repeating Characters
Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repeating letters for "abcabcbb" is "abc", which the length is 3. For原创 2016-02-01 16:10:40 · 512 阅读 · 0 评论 -
设计并实现一个LRU Cache (java)
什么是Cache概念Cache,即高速缓存,是介于CPU和内存之间的高速小容量存储器。在金字塔式存储体系中它位于自顶向下的第二层,仅次于CPU寄存器。其容量远小于内存,但速度却可以接近CPU的频率。当CPU发出内存访问请求时,会先查看 Cache 内是否有请求数据。如果存在(命中),则直接返回该数据;如果不存在(失效),再去访问内存 —— 先把内存中的相应数据载入缓存,再将其返原创 2016-01-03 22:37:26 · 6446 阅读 · 1 评论 -
Sum of Two Integers
思路:在不使用运算符求和的问题中,最容易想到的一种方法是借助与、异或和移位操作符。与和移位操作符配合使用可以找到进位,异或操作符能够找到非进位,两者相加得到Sum,由于不允许使用+操作符,所以只能通过这种方式递归下去,直到被加数为0,这时的加数即为两数之和。 public static int twoSum(int a, int b){ while(b!=0){ //找到非进位原创 2016-07-29 10:04:03 · 308 阅读 · 0 评论 -
牛客网在线编程题规范实例
牛客网华为笔试题通过案例,注意要引入包和输出:import java.util.Scanner;public class Main { public static int getIntFromDouble(double a){ return (int)(a+0.5); } public static void main(String[] args) {原创 2016-07-29 10:53:10 · 16082 阅读 · 1 评论 -
牛客网 请检查是否存在数组越界非法访问,野指针乱访问,空指针乱访问等情况
先贴出来正确的代码:import java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); while(in.ha原创 2016-08-04 10:43:56 · 9179 阅读 · 1 评论 -
牛客网在线编程输入多行
import java.util.HashMap;import java.util.Map;import java.util.Random;import java.util.Scanner;public class HelloWorld{ public static void main(String[] args){ Scanner in = new Sc原创 2016-08-02 21:56:19 · 9634 阅读 · 2 评论 -
牛客网-Java-字符统计
题目描述如果统计的个数相同,则按照ASII码由小到大排序输出 。如果有其他字符,则对这些字符不用进行统计。实现以下接口: 输入一个字符串,对字符中的各个英文字符,数字,空格进行统计(可反复调用) 按照统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASII码由小到大排序输出 清空目前的统计结果,重新统计调用者会保证:输入的字符串以‘\0’结原创 2016-08-19 15:34:39 · 913 阅读 · 0 评论 -
Java青蛙跳台阶的递归和非递归解法
递归版:int Fib(int n) { if (n <= 0){ return -1; } if (1 == n){ return 1; }else if (2 == n) { return 2; }else{ return Fib(n - 1) + Fib原创 2016-08-20 22:09:12 · 3153 阅读 · 0 评论 -
java HashMap的简单实现
package com.other.test;import java.util.HashMap;/** * HashMap的简单实现 * @author txxs * */public class MyOwnHashMap { /** * 取数组的大小为16 */ private static final int SIZE = 16; private Entry ta原创 2015-10-23 17:01:55 · 3444 阅读 · 0 评论