day20_0517
选择题
哈希函数的构造方法有:直接定址法、数字分析法、平方取中法、折叠法、除留余数法、随机数法;
处理冲突的方法:开放定址法(线性探测再散列、二次探测在散列、伪随机探测在散列)、再哈希法、链地址法、建立一个公共溢出区。
编程
字符串反转
reverse()方法用于颠倒数组中元素的顺序
StringBuffer,是可以存储和操作字符串,即包含多个字符的字符串数据。
String类是字符串常量,是不可更改的常量。而StringBuffer是字符串变量,它的对象是可以扩充和修改的。import java.util.Scanner; public class Main{ public static void main(String []args){ Scanner sc=new Scanner(System.in); String str=sc.nextLine(); StringBuffer sb=new StringBuffer(str); str=sb.reverse().toString(); System.out.println(str); } }
公共子串计算
import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); String s1=sc.nextLine(); String s2=sc.nextLine(); if(s1.length()>s2.length()){ String temp=s1; s1=s2; s2=temp; } int maxlen=0;//公共子串长度 for (int i = 0; i <s1.length() ; i++) { //剩下未遍历的长度小与maxlen,就不用继续了 if(s1.length()-i-1<maxlen){ break; } for (int j = s1.length(); j >=i ; j--) { //判断此时s1中i到j的子串是否存在与s2中,且长度大于maxlen; if(s2.contains(s1.substring(i,j))&&maxlen<j-i){ maxlen=j-i; } } } System.out.println(maxlen); } }