一,基础散列。
散列的思想很单一,以对应的数组下标对应,相应的值就可以了。比如:一个100位置的数组。当我将77放入时,应该放在下标为77的位置。这里有一点需要注意。
第一点,数组的最大值,是放入的最大值。比如数组100位置,那么我放入的最大值就不能超过99。这样当我们判断数组中的数是不是0,就知道它是否有值。(int类型的数组默认初始值是0);
上代码:
import java.util.Scanner;
/**
* 散列思想
*
*/
public class demo1 {
public static void main(String[] args) {
demo1 d=new demo1();
d.Show();
}
private int [] init(){
System.out.println("请输入生成随机数个数");
Scanner input=new Scanner(System.in);
int nums=input.nextInt();
System.out.print("请输入随机数最大范围");
int max=input.nextInt();
int [] ArrayNum=new int[max];
int current=0;
for(int i=0;i<nums;i++){
current=(int) (Math.random()*max);
ArrayNum[current]=current;
}
return ArrayNum;
}
private void Show(){
int[] a=init();
for (int c :a) {
if(c!=0){
System.out.print