算法
半盏鎏年
这个作者很懒,什么都没留下…
展开
-
第11届蓝桥杯 Java C 组真题 C:跑步训练
import java.util.Arrays;public class C { public static void main(String[] args) { int sum=10000; int flag = 1; int time = 0; while(sum+300>=600){ if(flag==1){ sum = sum-600; .原创 2020-07-05 22:17:16 · 1226 阅读 · 2 评论 -
第11届蓝桥杯 Java C 组真题 B解密:指数计算
private static void s() { String l="EaFnjISplhFviDhwFbEjRjfIBBkRyY"; String j=""; String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; String m="yxmdacikntjhqlgoufszpwbrevYXMDACIKNTJHQLGOUFSZPWBREV"; .原创 2020-07-05 21:57:52 · 566 阅读 · 0 评论 -
第11届蓝桥杯 Java C 组真题 A:指数计算
【问题描述】7月1日是建党节,从1921年到2020年,中国共产党已经带领中国人民走过了99年。请计算 mod 1921,其中A mod B 表示A除以B的余数。【答案提交】这是一道结果填空题,只需将整数提交即可思路:大整数求余数,求模公式:(a+b)modn=((amodn)+(bmodn))modn;(a-b)modn=((amodn)-(bmodn)+n)modn ;(a*b)modn=(amodn)(bmodn)modn;源码:因为问题的关键就是指数N比较大,如果能将指数能转载 2020-07-05 21:54:08 · 601 阅读 · 0 评论 -
二叉树 排序 遍历 算法
二叉树节点package BiTree;public class Node { public int data; public Node left; public Node right; public Node(int data){ this.data = data; this.right = null; this.left = null; } }构造二叉排序树p原创 2016-06-23 14:12:29 · 782 阅读 · 0 评论 -
Java 判断两个字符串是否由相同的字符组成
问题:由相同的字符组成是指两个字符串,字母以及各个字母的个数是相同的,只是顺序不同。如:“aaaabbc”与“abcbaaa”是由相同字符组成。方法一:排序法,也是最容易想到的方法,将两个字符串转换为字节数组,分别排序后,判断是否相同即可。方法二:集合法(空间换时间),利用Map集合key的唯一性,遍地第一个字符串,将字符作为key,字符出现的次数作为value,若遇到重复字符则将va原创 2016-06-17 19:54:36 · 14930 阅读 · 2 评论 -
2016腾讯实习生在线笔试题:把单词反转
2016腾讯实习生在线笔试题:把字符串中单词反转,China from am I.转换成:I am from China. 思路:两次逆序操作即可:第一次对字符串整体逆序,第二次分别对每个单词逆序。同时对'.'特殊处理,对单词逆序时,第一个单词特殊处理源码:package CharString;//问题:把字符串中单词反转,China from am I.转换成:I am fr原创 2016-06-17 16:33:39 · 589 阅读 · 0 评论 -
求解最小三元组距离
已知三个升序整数数组a[l], b[m]和c[n]。请在三个数组中各找一个元素,是的组成的三元组距离最小。三元组的距离定义是:假设a[i]、b[j]和c[k]是一个三元组,那么距离为:Distance = max(|a[ I ] – b[ j ]|, |a[ I ] – c[ k ]|, |b[ j ] – c[ k ]|)请设计一个求最小三元组距离的最优算法,并分析时间复杂度。原创 2016-06-17 12:54:42 · 1748 阅读 · 0 评论 -
Java合并数组的两个子有序段
//合并数组的两个子有序段public class FindRightPlaceMid { public static void findRightPlaceMid(int a[],int mid){ int temp,i=0,j=mid,k; while(i //先判断j是否小于a.length,再判断a[i]>a[j],否则会有数组越界异常 //&&判断,若左半部分为f原创 2016-06-16 20:08:29 · 596 阅读 · 0 评论 -
求数组中两个元素的最小距离
//求数组中两个元素的最小距离,不废话了,直接上代码public class MinDistence { public static int getMinDistence(int a[],int aa,int bb){ int d1=-1 ,d2=-1 ,min=a.length,temp; for(int i=0;i<a.length;i++){ if(a[i]=原创 2016-06-16 15:37:43 · 431 阅读 · 0 评论 -
Java 递归求数组最大元素
public class DiGuiMax { static int max(int[] array,int from){ if(from == array.length-1){ return array[from]; } return Math.max(array[from], max(array,from+1)); } static int max(int[] arr原创 2016-06-15 15:26:47 · 2094 阅读 · 0 评论 -
求数组中重复元素最多的数
import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Map.Entry;public class FindMostFrequentArray { /** * 求数组中出现次数最多的元素 * 思路:利用map集合key值不可重复,若重复则就会覆盖之前的原创 2016-06-14 21:27:33 · 1017 阅读 · 0 评论 -
求数组最大子数组的和
public class MaxSubArray { //求最大子数组的和 //暴力求解 public static int getMaxChildA(int[] a){ int i,j,low=0,high=0; int addMax = 0; int temp = 0; for(i=0;i<a.length;i++){ for(j=i;j<a.lengt原创 2016-06-14 20:51:18 · 490 阅读 · 0 评论 -
希尔排序
本人亲测可用,纯手打package Sort;//希尔排序public class XiErSort { public static void printArray(int[] a) { for (int i = 0; i < a.length; i++) { System.out.print(a[i] + " "); } System.out.println(""原创 2016-06-13 21:26:47 · 275 阅读 · 0 评论 -
快速排序示例
package Sort;//快速排序示例public class KuiSuSort { public static void printArray(int[] a) { for (int i = 0; i < a.length; i++) { System.out.print(a[i] + " "); } System.out.println(""); }原创 2016-06-12 11:25:31 · 717 阅读 · 0 评论