전체 글

안녕하세요 ?
Old Posts/Java

람다

http://jdm.kr/blog/181 https://homoefficio.github.io/2016/06/26/for-loop-%EB%A5%BC-Stream-forEach-%EB%A1%9C-%EB%B0%94%EA%BE%B8%EC%A7%80-%EB%A7%90%EC%95%84%EC%95%BC-%ED%95%A0-3%EA%B0%80%EC%A7%80-%EC%9D%B4%EC%9C%A0/

카테고리 없음

DFS와 BFS

//20180111 Starbucks//use Queue BFS문제가 어떤게 있는지 잘 몰라서 백준사이트에 들어가서 BFS항목을 클릭헀다. 제일 위에 미로탐색이 있어서 풀어보았는데 알고리즘을 생각해보니 DFS였다. 재귀적으로... 난 이걸 풀면서 BFS인줄 알았다. Test Case를 통과하고 제출했는데 시간초과가 떴다. 뭐지? 하는 마음에 '미로탐색 BFS' 라고 검색해보니 DFS로도 풀 수 있는데 DFS로는 시간초과가 걸리는 문제였다. 분명히 예전에는 BFS로 풀었던 것 같은데 헷갈려서.. 그래서 BFS를 곱씹고자 글을 남긴다. 다음과 같은 미로가 있다.array[0][0]부터 array[n][m]까지의 최단경로를 구한다고 하면 110110 110110 111111 111101배열을 하나 더 만들어서..

카테고리 없음

람다식

http://jdm.kr/blog/181 (2015-07-23)

Old Posts/Java

LinkedList

Poll이나 Push 등을 쓰지않고addFirst, addLast, removeFirst, removeLast 를 이용하여 스택과 큐를 구현할 수 있다. import java.util.LinkedList;public class linkedList { public static void main(String[] args) {// TODO Auto-generated method stub LinkedList list = new LinkedList();for (int i = 1; i

카테고리 없음

Map Set List

List: Collection 인터페이스를 확장한 자료형으로 요소들의 순서를 저장하여 색인(Index)를 사용하여 특정 위치에 요소를 삽입하거나 접근할 수 있으며 중복 요소 허용 ArrayList상당히 빠르고 크기를 마음대로 조절할 수 있는 배열단방향 포인터 구조로 자료에 대한 순차적인 접근에 강점이 있음 VectorArrayList의 구형버전이며, 모든 메소드가 동기화 되어있음잘 쓰이진 않음 LinkedList양방향 포인터 구조로 데이터의 삽입, 삭제가 빈번할 경우 빠른 성능을 보장.스택, 큐, 양방향 큐 등을 만들기 위한 용도로 쓰임 Set: 집합을 정의하며 요소의 중복을 허용하지 않음. 상위 메소드만 사용함 HashSet가장 빠른 임의 접근 속도순서를 전혀 예측할 수 없음 LinkedHashSet추..

Old Posts/Java

Set

알고리즘문제중 Joisino announces a number. If that number is written on the sheet, erase the number from the sheet; if not, write the number on the sheet. This process is repeated N times. 이때 set을 이용하여 for (int i = 0; i < n; i++) { temp = sc.nextInt(); if(set.contains(temp)) { set.remove(temp); }else { set.add(temp); } } contains 를 이용하여 체크를 할수 있겠지만 add() 메소드 자체적으로 boolean값을 반환한다.고로.. if ( !set.add(num)..

카테고리 없음

Iterator

ArrayList list = new ArrayList(); //Iterator 사용 Iterator itr = list.iterator();while( itr.hasNext() ){list.get( itr.next() );} //for 사용 int size = list.size();for( int i = 0; i < size; i++ ){ list.get( i );} Iterator 는 자동으로 Index 를 관리해주기 때문에, 사용에 편리함이 있을수 있으나 Iterator 를 열어보면 객체를 만들어 사용하기 때문에 느릴수 밖에 없다.

Old Posts/Java

예외처리

http://loveiskey.tistory.com/33

bactoria
Bactoria