자료구조 & 알고리즘/자료구조 & 알고리즘

[코딩테스트] Java 코딩테스트 필수 기능 Part.1

오징어달료 2024. 10. 16. 01:31

 


 Java로 코딩테스트를 준비한다면 필수적으로 알아야할 필수 기능(메소드)에 대해서 설명하고자 한다.

 설명에 앞서 이클립스나 인텔리제이와 같은 환경에서 개발을 하다보면 자동완성이 주는 이점으로 명확한 명칭을 기억하지 않을때가 많다. 실무에서는 IDE를 통해 개발하기에 큰 영향은 없지만 코딩테스트에서는 자동완성이 없는 경우가 많다. 특히나 기업에서 코딩테스트 플랫폼으로 많이 사용하는 프로그래머스도 자동완성 기능이 없다. 자동완성 기능이 없기 때문에 알고리즘 구현 방향성은 알아도 막상 코드 구성에서 버벅일수 있다. 이러한 상황을 미연에 방지고하고 필수적인 기능에 대해서 숙지하고자 한다.


0. 헷갈리는 길이 관련 문법

1. length
배열의 길이를 알고자 할 때 사용 [ array.length ]

2. length()
String related Object (String, StringBuilder etc)
문자열의 길이를 알고자 할 때 사용 [ str.length() ]

3. size()
Collection Object (ArrayList, Set etc)
Collection framework 타입의 길이를 알고자 할 때 사용  [ list.size() ]

// 배열 관련 길이
String[] strArr = new String[];
int strArrNum = strArr.length;
System.out.println(strNum);

// 문자열 관련 길이
String str = "Hello";
int strNum = str.length();
System.out.println(strNum);

// Collection 관련 사이즈
ArrayList<String> list = new ArrayList<>();
int listNum = list.size();
System.out.println(listNum);

 1. 배열 (Array)

// 배열 선언
int[] arr = new int[5];
int[] arr2 = {1,2,3,4,5,6,7,8};

// 배열 정렬
import java.util.Arrays;
Arrays.sort(arr);			// 오름차순 정렬

// 배열 복사
int[] arrayCopy = Arrays.copyOf(arr, arr.length);

// 배열 출력
System.out.println(Arrays.toString(arr));	// 배열 요소 출력

// 정렬된 배열에서 특정 값의 인덱스를 찾음
int index = Arrays.binarySearch(arr, 3);
// index 값 = 2 출력됨

// 선언된 배열의 크기
int arrSize = arr.length;

2. 리스트(List / ArrayList)

improt java.util.ArrayList;
import java.util.List;

// list 선언
List<Intger> list = new ArrayList<>();

// 요소 추가
list.add(1);		

// 요소 가져오기
list.get(0);

// 요소 삭제
list.remove(0);

// 리스트 크기
list.size();

// 요소 포함 여부
list.contains(1);

// 리스트 정렬
Collections.sort(list);