728x90 반응형 CS17 Boyer-Moore vs KMP https://lms0806.tistory.com/210 A Fast StringSearching Algorithm 리뷰해당 논문은 boyer–moore 알고리즘 이라고 불리는 kmp와 비슷한 알고리즘에 대하여 설명하고 있습니다. 보이어무어 알고리즘은 불필요한 것은 건너뛰고, 검색을 빠르게 하자는 것에서 KMP와 유사lms0806.tistory.com이전 포스팅에서 보이어-무어에 대해 설명중인 논문에 대해 설명을 했었습니다.https://lms0806.tistory.com/211 JAVA에서의 Boyer-Moore해당 글은 보이어 무어 알고리즘을 사용하고 있는 JAVA의 내부 코드에 대해 이야기하고자 합니다.Boyer-Moore에 대해서는 해당 글 참조 부탁드립니다.https://lms0806.tisto.. 2024. 6. 25. C++ 코드를 JAVA로 바꿔보자 오늘은 https://www.acmicpc.net/problem/2557 문제를 통과하는 코드인 cpp 코드를 java코드로 바꿔주는 소스를 작성해 봤습니다. 2557번: Hello World Hello World!를 출력하시오. www.acmicpc.net 코드 컨벤션을 준수한 코드를 기준으로 작성했습니다. 테스트 cpp 코드 #include using namespace std; int main(){ cout 1 && s[1].contains("main")) { sb.append("public class Main {").append("\n"); sb.append("public static void main(String[] args)").append(iostream ? "throws IOException.. 2023. 10. 10. 트리를 활용한 문자열 비교 알고리즘 해당 알고리즘은 결정적 유한 오토마타를 학습하면서 떠오른 아이디어로 개발하였습니다. https://ko.wikipedia.org/wiki/%EA%B2%B0%EC%A0%95%EC%A0%81_%EC%9C%A0%ED%95%9C_%EC%83%81%ED%83%9C_%EA%B8%B0%EA%B3%84 결정적 유한 상태 기계 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. --> ko.wikipedia.org 기존 map을 활용하여 중복을 제거하고, containsKey로 해당 문자열을 포함하고 있는지 체크하는 방식이 아닌, 트리를 활용하여 중복도 제거하고, 부분 문자열이 아닌 특정 문자열이 있는지 체크하는 알고리즘 입니다. 기존의 트리를 생각한다면 이런방식의 무방향 트리나, 방향이 있는 트리를 .. 2023. 8. 17. 배열 뒤집기 시간 측정 C++하시던 분이 JAVA를 시작하게 되면서 C++에 있는 reverse()에 대해 여쭤봤었습니다. 그러면서 갑자기 궁금한 내용이 있어서 포스팅을 하게 되었습니다. JAVA에는 뒤집기 함수가 없어 직접 배열을 만들어 뒤집거나 하는 방식으로 진행해야 합니다. (lower_bound, upper_bound도 없어..) JAVA의 배열 뒤집기 시간측정을 해보겠습니다. n은 10,000,000으로 측정해봤습니다. 배열 long beforeTime = System.currentTimeMillis(); int[] arr = new int[n]; for(int i = 0; i < n; i++) { arr[i] = i; } int[] arr1 = new int[n]; for(int i = 0; i < n; i++) {.. 2023. 3. 14. 이전 1 2 3 4 5 다음 728x90 반응형