본문 바로가기
반응형

프로그래밍 언어11

Python 자료구조 공부 - List(Stack, Queue) 참고 자료는 여기 입니다. 리스트 자료 형은 여러가지 메소드를 갖고 있습니다. 이 리스트를 Stack, Queue 로 사용하는 방법에 대해서 알려드리겠습니다. 리스트를 스택으로 사용하기 리스트 메서드들은 리스트를 스택으로 사용하기 쉽게 만드는데, 마지막에 넣은 요소가 마지막에 나오는 LIFO 원리입니다. 스택의 꼭대기에 항목을 넣으려면 append() 를 사용하고, 스택의 꼭대기에서 값을 꺼낼 때는 pop()을 사용하면 됩니다. stack = [3, 4, 5] stack.append(6) stack.append(7) 다음과 같이 입력 후, stack 을 출력하면 [3, 4, 5, 6, 7]이 나옵니다. 이후에, stack.pop() 이용시 맨 마지막에 있는 '7' 이 출력됩니다. 리스트를 큐로 사용하기 .. 2019. 8. 14.
Java Priority Queue 사용하기 - Comparable interface 우선순위 큐(Priority Queue)란, 선입선출 구조가 아닌, 우선순위가 가장 높은 데이터가 먼저 나오게 됩니다. Java에서 우선순위 큐를 이용하는 방법을 예제와 함께 알아봅시다. 제가 PriorityQueue를 사용한 이유는 다익스트라 알고리즘에서 거리 정보중 최단 거리를 갖고 있는 위치 정보를 가져와야 하기 때문이죠. 그렇다면 위치정보와 동시에 거리정보를 가지고 있는 새 객체를 만들고, 이 객체를 PriorityQueue의 에 할당하면 됩니다. 1. 우선순위 큐 선언 static PriorityQueue prq; prq = new PriorityQueue(); 2. 위치정보와 거리정보를 지닌 Point 객체 생성 class Point implements Comparable { int i, j;.. 2019. 4. 6.
JAVA HashMap 정리 HashMap이란 Key와 Value를 묶어 하나의 entry 로 저장한다는 특징을 갖고 있습니다. 그리고 hashing을 사용하기 때문에 많은 양의 데이터를 검색하는데 뛰어난 성능이 장점입니다. - Map 인터페이스의 한 종류로 (Key, value)로 이루어져 있습니다.- Key 값은 중복이 불가능하고, Value는 중복과 null값이 가능합니다. - 멀티쓰레드에서는 HashTable을 씁니다. HashMap 생성자/메소드 생성자/메소드 설명 HashMap() : HashMap객체 생성 ex) HashMap hm = new HashMap(); orMap map = new HashMap(); HashMap(int initialCapacity) : 지정된 값을 초기 용량으로 하는 HashMap객체 생성 .. 2019. 3. 21.
java 자료구조 1. 스택import java.util.Stack; 사용법Stack stackname = new Stack(); 주 메소드 메소드 설명 boolean empty() 해당 스택이 비었으면 true, 그렇지 않으면 false E peek() 해당 스택의 제일 상단에 있는(제일 마지막 저장된) 요소를 반환함 E pop() 해당 스택의 제일 상단에 있는(제일 마지막 저장된) 요소를 반환함 + 해당 요소를 스택에서 제거함 E push() 해당 스택의 제일 상단에 전달된 요소를 삽입함. int search(Object) 해당 스택에서 전달된 객체가 존재하는 위치의 인덱스를 반환함.이 때 인덱스는 제일 상단에 있는(제일 마지막으로 저장된) 요소의 위치부터 0이 아닌 1부터 시작 2. 큐import java.util... 2019. 3. 7.
JAVA input 처리(Scanner, String) 1. ScannernextInt() 사용 후, nextLine()을 사용하면 제대로 읽어들이지 않는 문제가 발생합니다. 그 이유는 nextInt() 메소드는 가장 마지막 개행 문자 '\n'까지 읽어들이지 않기 때문입니다. 따라서 그 개행문자는 다음에 호출된 nextLine()에서 읽어들이게 되어서 nextLine()에 아무것도 들어가지 않는(원하는 값이 들어가지 않는) 것이죠.이 문제를 해결하기 위해서 저는 2가지 방법을 사용하는데요, 1. 모두 nextLine()으로 읽어들인 후, 정수가 필요할 때 스트링안에서 처리를 해줍니다. 예를 들면 Integer.parseInt() 또는 {input}.charAt([index]) 같은 메소드를 사용하는 것이죠 2. 두번째로는 nextInt()이후에, [Scann.. 2019. 3. 7.
반응형