摘要:哈希表充分体现了算法设计领域的经典思想:空间换区时间 哈希表是时间和空间之间的一个平衡 哈希函数的设计很重要 键通过哈希函数得到索引分布均匀 哈希函数的设计: 1.键通过哈希函数得到索引分布均匀:特殊领域的哈希函数设计方式甚至有专门的论文这个不考虑,我们只是设计最普通的函数设计: 整型:小范围的正整
阅读全文
摘要:1和链表一样,是一个动态结构。 2是二叉树 3每一个节点的值,大于其左子树的所有节点的值 4小于右子树的所有的节点的值 5每一个子树,也是一个二叉树 集合:
阅读全文
摘要:两组升序排列的数组A[m]和B[n], 求他们的中位数。 注意,中位数的概念哦~相信你会百度一下的~ 格式: 第一行输入数字m,接下来一行输入数组A[m], 第三行输入数字n,第四行输入数组B[n],接下来输出中位数。两个数组的长度都不超过1000。 注意,需要保留5位小数哦~所以,你设计函数的时候
阅读全文
摘要:package book.digui; /** * 跳跃游戏 * @author airycide * 给定的一个数组arr,arr[i] == k,代表可以从位置i向右跳1~k个距离,比如:arr[2] = 3, * 代表从位置2的位置可以跳到位置3,位置4,位置5,如果从位置0出发返回最少跳几次能跳到arr最后的位置上 * 举例说明:arr=[3,2,3,1,1,4] * arr...
阅读全文
摘要:package CHobery; /** * 给定7个数字2,3,5,6,7,8,9的全排列共7!个 * 7位数中有多少个平方数。试着求出这些7位平方数 * @author Administrator * */ public class Main1 { public static long b = 0,c = 0,d = 0,y = 0,g = 0; public stati...
阅读全文
摘要:package demo2; import java.util.Scanner; public class Main { private static Scanner input = new Scanner(System.in); public static void main(String[] a
阅读全文
摘要:小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是: 1. 各组的核桃数量必须相同 2. 各组内必须能平分核桃(当然是不能打碎的) 3. 尽量提供满足1,2条件的最小数量(节约闹革命嘛) 上述代码没有通过判断 网上看的代码
阅读全文
摘要:2. 给定一个年份,判断这一年是不是闰年。 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍数; 2. 年份是400的倍数。 其他的年份都不是闰年。 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分。
阅读全文
摘要:说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。 一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低。 说明:请注意这里的数据规模。 本题直接的想法是直接使用一个循环来累加,然而,当数据规模很大时,这种“
阅读全文
摘要:排序是一个很重要的概念,现实生活中,我们需要为很多的东西排序。下面我们就介绍几种简单的排序的方法和最基本的思想。 1.冒泡排序:假设一个数组中有10个数字,从左边开始
阅读全文
摘要:Java实现顺序表算法:1:首先我们需要定义我们的接口,关于顺序表的一些基本的操作:顺序表中的操作都有增删改查。 //List接口 public interface IList { //返回线性表的大小,即数据元素的个数。 public int getSize(); //如果线性表为空返回 true
阅读全文
摘要:package 迷你图书管理系统; import java.util.Scanner; public class BookMgr { public static void main(String[] args) { Scanner input = new Scanner(System.in); //
阅读全文
摘要:有趣的整数: 完数:如果一个数字恰好等于他的因子之和,就叫做完数,需求是求出10000以内的所有的完数。 解法:1.用n去除以1-n之间的所有的整数,将能整除的被除数保存到一个数组中,作为n的一个因子。 2.用数n减去该因子,以方便计算各因子之和是否等于n. 3.重复步骤1和2找到所有的完数为止。
阅读全文
摘要:package 散列表; import java.util.Scanner; public class HashSearch { public static int data[] = {69,65,90,37,92,6,28,54}; public static int hash[] = new i
阅读全文
摘要:package 索引查找; import java.util.Scanner; public class IndexSearch { public static long stu[] = { 1080101,1080102,1080103,1080104,1080105,1080106,0,0,0,
阅读全文
摘要:package 折半查找; import java.util.Scanner; public class BinarySearch { /** * 折半查找:要求查找的数据是线性保存,表中的数据是按照从小到大的顺序排列的 */ public static int source[] = {6,12,2
阅读全文
摘要:package jinzhizhuanhuan; import java.math.BigInteger; import java.util.Scanner; /** * 题目意思很简单,实现16以内的进制之间的转换,将一个n进制的数转换为一个m进制的数。 输入:每行包括3个字符串,第一个表示要转换
阅读全文
摘要:package com.util.sort; public class ShellSort { private long[]theArray; private int nElem; public ShellSort(int max){ theArray = new long[max]; nElem
阅读全文
摘要:package com.util.MyStack;public class MyStack { private int maxSize; private long[]stackArray; private int top; public MyStack(int s){ maxSize = s; st
阅读全文