Una pregunta por día para el trabajo 2020 04011 Cuarenta pregunta

/ ** 
 * 
 * Problema: 
 * Determine si todos los caracteres en una matriz de caracteres aparecen solo una vez 
 * Dados los caracteres de una matriz [] de un tipo de carácter, determine si todos los caracteres en caracteres aparecen solo una vez. 
 *     
 * Requisitos: 
 * La complejidad del tiempo es O (N) 
 * Respuesta: 
 * Caracteres transversales una vez, use el mapa para registrar la aparición de cada carácter, de modo que pueda encontrar caracteres repetidos durante el recorrido 
 * La aparición del mapa, el mapa se puede arreglar por longitud La implementación de la matriz también se puede implementar con una tabla hash. 
 *    
 * @autor Xuetong 
 * 
 * /

  

public class IsUniquel { 

	public static boolean isUniquel (char chars []) { 
		
		if (chars == null) { 
			return true; 
		} 
		
		mapa booleano [] = nuevo booleano [256]; 
		for (int i = 0; i <chars.length; i ++) { 
			if (map [chars [i]]) { 
				return false; 
			} 
			mapa [caracteres [i]] = verdadero; 
		} 
	
		devuelve verdadero; 
	} 
}

  

public class TestIsUniquel {

	public static void main(String[] args) {
		
		char chars1[] ={'a','b','c'};
		char chars2[] ={'a','b','c','b'};
		
		boolean result1 = IsUniquel.isUniquel(chars1);
		showCharArray(chars1);
		showResult(result1);
		boolean result2 = IsUniquel.isUniquel(chars2);
		showCharArray(chars2);
		showResult(result2);
	}
	
	public static void showResult(boolean flag){
		if(flag){
			System.err.println("各个字符元素均出现一次");
		}else{
			System.err.println("存在字符元素出现多次");
		}
	}
	
	public static void showCharArray(char array[]){
		for (char arr : array) {
			System.err.print(arr+"\t");
		}
		System.out.println();
	}
}

  

*运行结果

 

 

Supongo que te gusta

Origin www.cnblogs.com/walxt/p/12678750.html
Recomendado
Clasificación