JAVA 알고리즘 필수 문법

박대운·2022년 12월 7일
1

Algorism

목록 보기
3/3

String str=””;

str.charAt(int index);
str.indexOf(String find);
str.indexOf(String find, int from);
str.contains(String str);

str.toCharArray();
str.split(“”) // 각 문자들을 리스트로 만들거면 String[]을 사용하는 것이 편함

integer to String : Integer.toString(int i); // str = “” + i;
char to String : Character.toString(char c); // str = “”+ c;
String to int : Integer.parseInt(str);

String sub = str.substring(int start, int end); // end 포함 안됨

str.toUpperCase(); str.toLowerCase();
str.length();

문자열 다루기 / StringBuilder

StringBuilder sb = new StringBuilder();
StringBuilder sb = new StringBuilder(String str);
StringBuilder sb = new StringBuilder(char[] chars);

sb.append();
sb.insert(int index, String str); // 위치에 삽입할때는 insert

sb.charAt(int index);
sb.indexOf(String str); //인덱스 가져오기

sb.subString(int start, int end);

sb.replace(int start, int end, String str);

sb.delete(int start, int end);

sb.reverse()

sb.length();
sb.toString();

기본형 다루기 / Integer, Character

char to int : Character.getNumericValue(char c); // int i = c – ‘a’;
char to String : Character.toString(char c); // String str = “”+c;

: String str = String.valueOf(char c); // nullPointerException 없음
: String str = new String(char[] cArray);

Character.isDigit(); //배열 또는 문자열에 숫자 찾기

String binaryStr = Integer.toBinary(int num);
int i = Integer.parseInt(binaryStr, 2);

Math 함수 다루기

Math.ceil(); // 올림
Math.floor(); // 내림
Math.sqrt(); // 제곱근 반환 (25) 하면 5 반환
Math.pow(int i, int p); // i의 p제곱 값 반환
Math.max(int a, int b); // 두개 비교해서 큰 값
Math.min(int a, int b); // 두개 비교해서 작은 값
Math.round(double d); // 반올림
Math.abs(int i); // 절대값 (자연수) 추출
Math.random(); // 랜덤숫자

배열 다루기 / Arrays

Arrays.sort(T[] arrays) // 오름 차순 정렬
Arrays.sort(T[] arrays, Collections.reverseOrder()); // 내림차순 정렬
Arrays.sort(T[] arrays, int fromIndext, int toIndex) // fromIndex 부터 toIndex까지만 오름차순 정렬
Arrays.sort(T[] arrays, new Comparator(){
public int compare(T o1, T o2){ return i;}
})

Arrays.asList(T[] arrays); // java.util.Arrays.ArrayList 크기 변경 불가 (배열을 리스트에 추가)

Arrays.copyOf(T[] arr, int length); // 0번부터 length의 앞전 인덱스까지 복사해서 출력

Arrays.copyOfRange(T[] arr, int fromIndex, int toIndex)
// fromIndex부터 toIndex 앞전까지 복사하여 출력

Arrays.fill(T[] arr, Object o); // arr배열을 o 값으로 모두 초기화. [o,o,o,o]

Arrays.binarySearch(T[] arr, Object key) // 정렬 후 사용, 값 중복 시 인덱시 랜덤

리스트 다루기 / List , ArrayList, LinkedList, Stack, Queue, Map

T[] arrays = list.toArray(new T[size]); //minimum size는 list.size()

Collections.sort(collections c);
Collections.sort(collections c, Collections.reverseOrder());
Collections.sort(collections c, new comparator(){
public int compare(T ob1, T ob2){return i;}
})

List -> ArrayList, LinkedList, Queue, PriorityQueue
Set -> HashSet, LinkedSet, TreeSet
Map -> HashMap

1. List

list.size(); // 길이 반환
list.isEmpty();
list.contains(Object o); // 값이 있는지 확인 있으면 true
list.add(int index, E element); // 저장

list.get(int index); // 해당 인덱스의 값 가져오기
list.indexOf(Object o); // 요소의 인덱스 가져오기

list.clear(); // 리스트 비우기
list.remove(int index); // 해당 인덱스 지우기
list.remove(Object o); // 해당 요소 지우기

1-1 ArrayList

arraylist.clone(); // arraylist를 얕은 복사하여 반환
arraylist.toArray(); // list를 배열로 반환
arraylist.ensureCapacity(int mincapacity); // 최소 사이즈 지정
arraylist.trimToSize(); // 사용하지 않는 부분 자르기

1-2 LinkedList

linkedlist.clone();
linkedlist.toArray();

add(int index, E e) / addFirst() / addLast() // 값 추가하기
offer(E e) / offerFirst(E e) / offerLast(E e)
get(int index) / getFirst() / getLast() // 값 반환하기
peek() / peekFirst() / peekLast() // 반환만
poll() / pollFirst() / pollLast() // 제거하고 반환

1-3 Queue

offer(E e);
add();
peek(); 첫번째 요소 받환
poll(); 첫번째 요소 지우고 그 값을 반환

1-4 PriorityQueue

PriorityQueue pq = new PriorityQueue<>() // 자동으로 오름차순으로 담기는 Queue
PriorityQueue pq = new PriorityQueue<>(new Collections.reverseOrder()) // 내림차순

offer();
add();
peek();
poll();

Set / HashSet

set.size();
set.isEmpty();
set.contains(Object o);
set.add(int index, E element);
remove(Object o);

Map / HashMap

map.clear()
map.size()
map.containsKey(Object key); // 키 값이 있는지 확인
map.containsValue(Object value); // 벨류 값이 있는지 확인

map.get(Object key); // 벨류 값 반환
map.getOfDelfault(Object key, V defaultValue);
// 키 값이 있으면 키값을 반환하고 없다면 기본값을 반환

map.keySet(); // 맵의 저장된 모든 키를 반환
map.values(); // 맵의 저장된 모든 벨류 값을 반환

for (Entry<Integer, String> entrySet : map.entrySet()) {
// EntrySet은 해당 키와 벨류값을 set으로 반환

map.forEach((key, value) -> { // 해당 키와 벨류 값을 반환

map.put(K key, V value);

map.remove();
map.replaec(K key, V value);

profile
성장하는사람이 되자

0개의 댓글