Java에서 Anagram 프로그램을 구현하는 쉬운 방법



이 기사는 예제와 함께 자바에서 anagram 프로그램을 구현하는 방법에 대한 상세하고 포괄적 인 지식을 제공합니다.

특히 Java에서 Strings로 놀라운 일을 할 수 있습니다. 이 기사에서는 다음 순서로 Java에서 Anagram 프로그램을 구현하는 방법을 살펴 봅니다.

아나그램이란 무엇입니까?

철자 바꾸기 다른 단어의 글자를 재 배열하거나 셔플하여 형성되는 단어입니다. Anagram에서 가장 중요한 속성은 모든 글자를 한 번만 사용해야한다는 것입니다. 예를 들어 인기있는 철자법을 살펴 보겠습니다. 들리다 의 철자입니다 조용한 .





Anagram-Program-in-Java

이 자바 아나그램 프로그램에서는 두 문자열이 아나그램인지 아닌지 확인하는 몇 가지 가능한 방법을 살펴 보겠습니다.



sort () 및 equals () 메소드를 사용하는 Java의 Anagram 프로그램

먼저 주어진 두 문자열에서 모든 공백을 제거하여 입력을 정리하고 두 문자열의 모든 문자의 대소 문자를 소문자로 변경하여 두 입력 문자열의 대소 문자를 모두 무시합니다. 입력 문자열을 정리 한 후 문자 배열로 변환하고 다음을 사용하여 정렬합니다. sort () 메서드 java.util.Arrays 클래스의.

정렬 후 다음을 사용하여 두 배열을 비교합니다. equals () 메서드 동일한 Array 클래스의. 이 메서드는 두 배열에 동일한 문자 집합이있는 경우 true를 반환합니다. 다음은 sort () 및 equals () 메소드를 사용하는 완전한 anagram 프로그램입니다.

public class AnagramProgram {static void isAnagram (String s1, String s2) {// s1 및 s2에서 모든 공백 제거 String copyOfs1 = s1.replaceAll ( 's', '') String copyOfs2 = s2.replaceAll ( 's', '') // 초기 상태를 true로 설정 boolean status = true if (copyOfs1.length ()! = copyOfs2.length ()) {// copyOfs1과 copyOfs2의 길이가 같지 않으면 상태를 false로 설정 status = false} else {// copyOfs1 및 copyOfs2의 문자 대소 문자 변경 및 문자 배열 char [] s1Array = copyOfs1.toLowerCase (). toCharArray () char [] s2Array = copyOfs2.toLowerCase (). toCharArray () // s1Array와 s2Array 모두 정렬 Arrays.sort (s1Array) Arrays.sort (s2Array) // s1Array와 s2Array가 같은지 확인 status = Arrays.equals (s1Array, s2Array)} // Output if (status) {System.out.println (s1 + '및'+ s2 + '는 애너그램')} else {System.out.println (s1 + '및'+ s2 + '는 애너그램이 아닙니다')}} public static void main (String [] args) {isAnagram ( 'Mother In Law ','Hitler Woman ') isAnagram ( 'keEp', 'peeK') isAnagram ( 'SiLeNt CAT', 'LisTen AcT') isAnagram ( 'Debit Card', 'Bad Credit') isAnagram ( 'School MASTER', 'The ClassROOM') isAnagram ( 'DORMITORY ','더티 룸 ') isAnagram ('ASTRONOMERS ','NO MORE STARS ') isAnagram ('Toss ','Shot ') isAnagram ('joy ','enjoy ')}}

anagram-program-in-java



자바의 하위 문자열은 무엇입니까

배열을 사용하여 두 문자열이 아나그램인지 확인

이것은 모든 방법 중 가장 간단합니다. 사용자로부터 문자열을받은 후 먼저 모두 제거 그만큼 여백변하게 하다 그들에 소문자 대소 문자를 구분하지 않는 비교를 위해. 이제 그들을 문자 배열종류 그들 알파벳순으로 . 다만 비교 두 배열 모두 동일한 요소 .

package com.javainterviewpoint import java.util.Arrays import java.util.Scanner public class AnagramChecker {public static void main (String [] args) {Scanner scanner = new Scanner (System.in) // 사용자로부터 입력 문자열 가져 오기 System.out.print ( '첫 번째 문자열 입력 :') 문자열 s1 = scanner.nextLine () System.out.print ( '두 번째 문자열 입력 :') 문자열 s2 = scanner.nextLine () if (checkAnagram (s1, s2)) System.out.println (s1 + '및'+ s2 + '는 Anagrams') else System.out.println (s1 + '및'+ s2 + '는 Anagrams'가 아닙니다) scanner.close ()} public static boolean checkAnagram ( String s1, String s2) {// 모든 공백 제거 s1 = s1.replaceAll ( 's', '') s2 = s2.replaceAll ( 's', '') // 두 길이가 모두 일치하는지 확인 if (s1 .length ()! = s2.length ()) return false else {// 두 문자열을 모두 소문자와 문자 배열로 변환 char [] arr1 = s1.toLowerCase (). toCharArray () char [] arr2 = s2.toLowerCase () .toCharArray () // 두 문자 배열 배열 정렬 .sort (arr1) Arrays.sort (arr2) // 확인 두 배열 모두 동일 return (Arrays.equals (arr1, arr2))}}}
anagram-program-in-java

이것으로 우리는 자바의이 아나그램 프로그램 기사를 마칩니다. 애너그램이 정확히 무엇인지, 자바로 애너그램 프로그램을 작성하는 방법을 이해 하셨기를 바랍니다.

확인 전 세계에 걸쳐 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사 인 Edureka에서 작성했습니다. Edureka의 Java J2EE 및 SOA 교육 및 인증 과정은 Java 개발자가 되고자하는 학생과 전문가를 위해 설계되었습니다. 이 과정은 Java 프로그래밍을 시작하고 Hibernate & Spring과 같은 다양한 Java 프레임 워크와 함께 핵심 및 고급 Java 개념 모두에 대해 교육하도록 설계되었습니다.

질문이 있으십니까? 이 '자바의 Anagram 프로그램'블로그의 댓글 섹션에 언급 해 주시면 가능한 한 빨리 연락 드리겠습니다.