알고리즘
-
[코테] 문제 12.암호알고리즘/코테 2024. 11. 1. 14:35
2. 암호 1. “#*****#”를 일곱자리의 이진수로 바꿉니다. #은 이진수의 1로, *이진수의 0으로 변환합니다. 결과는 “1000001”로 변환됩니다.2. 바뀐 2진수를 10진수화 합니다. “1000001”을 10진수화 하면 65가 됩니다.3. 아스키 번호가 65문자로 변환합니다. 즉 아스크번호 65는 대문자 'A'입니다.참고로 대문자들의 아스키 번호는 'A'는 65번, ‘B'는 66번, ’C'는 67번 등 차례대로 1씩 증가하여 ‘Z'는 90번입니다.현수가 4개의 문자를 다음과 같이 신호로 보냈다면#****###**#####**#####**##**이 신호를 4개의 문자신호로 구분하면#****## --> 'C'#**#### --> 'O'#**#### --> 'O'#**##** --> 'L' 입력첫 ..
-
[코테] java - ArrayList 메서드 정리알고리즘/코테 2024. 10. 30. 17:42
java ArrayList 메서드 정리 ArrayList list = new ArrayList() // 리스트 생성list.add(e): 리스트의 끝에 요소를 추가합니다.list.add(index, e): 지정한 인덱스에 요소를 추가합니다.list.remove(index): 지정한 인덱스의 요소를 삭제합니다.list.remove(object): 지정한 객체를 삭제합니다.list.get(index): 지정한 인덱스의 요소를 반환합니다.list.set(index, e): 지정한 인덱스의 요소를 변경합니다.list.size(): 리스트의 요소 개수를 반환합니다.list.contains(object): 리스트에 특정 요소가 포함되어 있는지를 확인합니다.list.indexOf(object): 특정 요소의 인덱스를..
-
[코테] java배열 메서드 정리알고리즘/코테 2024. 10. 30. 11:21
java 배열 스태틱 메서드 정리Arrays.sort(): 배열을 오름차순으로 정렬합니다. 특정 조건에 따라 사용자 정의 정렬도 가능합니다.Arrays.binarySearch(): 정렬된 배열에서 특정 값을 이진 탐색으로 검색합니다. 검색 속도가 매우 빠릅니다.Arrays.copyOf(): 배열을 복사하여 새로운 배열을 생성합니다. 복사할 길이를 지정할 수 있습니다.Arrays.equals(): 두 배열의 내용이 동일한지 비교합니다. 객체 배열의 경우에도 사용할 수 있습니다.Arrays.fill(arr, value): 배열의 모든 요소를 지정된 값으로 채웁니다. 초기화할 때 유용.Arrays.toString(): 배열의 내용을 문자열로 변환하여 출력할 수 있게 해줍니다. 디버깅 시 유용합니다.Arrays..
-
[코테] java-중복된 문자 제거하기알고리즘/코테 2024. 10. 28. 13:01
1.IndexOf()만 이용해서 풀기str.indexOf()는 매개변수로 char / string 타입 모두 가능에 타입 모두 덧붙일 수 있음Scanner sc = new Scanner(System.in);String answer = "";String str = sc.next();for(int i=0; i 2.StringBuilder와 indexOf()를 이용해서 풀기 Scanner sc = new Scanner(System.in); String str = sc.next(); StringBuilder sb = new StringBuilder(); for(int i=0; i
-
[TIL] 아스키코드로 대소문자 변환하기알고리즘/코테 2024. 10. 25. 11:40
아스키코드로 대소문자 변환하기 대문자 : 65(A) ~ 90(Z)소문자: 97(a) ~ 122(z) 때문에소문자에서 (-32) 를 하면 대문자가 되고,대문자에서 (+32) 를 하면 소문자가 된다. char타입 자바에서 char타입은 문자를 의미하는 타입이지만 내부적으로는 아스키코드를 통해 숫자로 표현된다예를들어, char타입의 'A'는 65, 'a'는 97의 값을 가진다. 코드)char ch = 'A';int num = ch; // num = 65 저장 코드 문제 예제) 대소문자 변환import java.util.*;public class Main { public static void main(String[] args) { Scanner sc = new Scanne..
-
[TIL]자료구조 - 이진트리알고리즘 2024. 10. 20. 13:52
이진트리이진트리는 각 노드가 최대 2개의 자식을 가질 수 있는 트리 를 의미한다 이진트리의 탐색이진트리의 탐색은 재귀를 이용하여 비교적 쉽게 구현할 수 있다. 방문하는 순서에따라 이진트리 탐색은 3가지로 나뉘게되는데 전위 탐색, 중위 탐색, 후위 탐색이다. 전위탐색(preorder) 순서로 탐색하는 방식 위 예제를 탐색한다면 1-2-5-4-3-6-8-7> 순서로 방문하게된다. 중위탐색(inorder) 순서로 탐색하는 방식 위 예제를 탐색한다면 순서로 방문하게된다. 후위탐색(postorder) 순서로 탐색하는 방식 위 예제를 탐색한다면 순서로 방문하게된다. 이진탐색트리 이진트리의 조건중 하나를 추가한 것."부모의 왼쪽 방향에 있는 노드들은 전부 부모 보다 값이 ..
-
[코테] 자료구조5 - HashMap, HashSet 사용하기알고리즘/코테 2024. 10. 5. 21:08
HashMap순서에 상관없이 key-value형태로 저장되는 자료구조. 삽입, 검색이 모두 O(1)의 시간복잡도를 가지는 특징이 있다. HashMap map = new HashMap(); //해시테이블 생성map.put("Apple", 10); // "Apple" key에 10 추가 (추가, 수정 모두 가능)map.put("Apple", 20); // "Apple" key의 value을 20으로 수정map.put("Apple", 30); // "Apple" key의 value을 30으로 수정map.remove("Apple"); // "Apple" key와 그에 해당하는 value을 제거map.get("Banana"); // "Banana" key에 해당하는 value 검색map.keySet() // ..
-
[코테] 자료구조 - 덱 메서드 정리알고리즘/코테 2024. 10. 2. 22:32
스택과 큐 클래스는 이제 자바에서 레거시가 되었다. 대신 자바에서 스택과 큐를 한번에 사용하기위한 목적으로 덱을 쓴다. Deque deque = new ArrayDeque(); // 덱 생성addFirst() // 맨 앞에 요소를 추가 (스택의 push)addLast() // 맨 뒤에 요소를 추가합니다.offerFirst() // 맨 앞에 요소를 추가(가득 찼을 때 예외 발생 안 함), 안전한 추가 보장offerLast() // 맨 뒤에 요소를 추가합니다 (가득 찼을 때 예외 발생 안 함).removeFirst() // 맨 앞 요소를 제거하고 반환합니다.(없으면 에러반환) (스택의 pop)removeLast() // 맨 뒤 요소를 제거하고 반환합니다.(없으면 에러반환)pollFirst() //..