본문 바로가기

반응형

프로그래밍 언어

JAVA string 관련 메소드 1. length() 문자열의 길이 확인 String str = "abcde"; str.length(); 2. isEmpty() 문자열이 비어있는지 확인한다. 문자열의 길이가 0이면 true, 0이 아니면 false반환 3. charAt 문자열 중 해당 인덱스의 문자를 반환한다. (인덱스는 0~문자열의길이 - 1) 4. getChars 문자열을 문자배열로 복사 String str = new String("abcd"); char [] ch = new char[4]; str.getChars(0,2,ch,0); // 시작 인덱스, 끝 인덱스, 복사받을 char 배열 이름, 복사 시작 위치 //ch에는 "ab" 배정 5. equals 해당 문자열과 매개변수의 문자열이 같은지 비교하여 true 또는 false 반.. 더보기
defaultdict defaultdict()는 딕셔너리를 만드는 dict 클래스의 서브클래스이다. 작동방식은 dict 클래스와 거의 동일하나 인자로 주어진 객체의 기본값을 딕셔너리의 초기값으로 지정할 수 있는 것이 차이점이다. from collections import defaultdict int_dict = defaultdict(int) 위와 같이 설정을 하면 값을 지정하지 않은 키는 그 값이 0으로 지정된다. 따라서 지정하지 않은 키 값에 대해서 조회할 경우, 자동으로 0값이 value로 주어지며 key-value가 defaultdict에 저장된다. int_dict['key2'] = 'test' 위와 같이 키에 명시적으로 값을 지정하게 되면 그 값이 지정된다. 이외에도 default 값으로 list를 주게되면 지정하지 .. 더보기
Python 정렬하기 - list 참고자료는 여기입니다. python의 리스트는 .sort() 메소드를 이용해서 정렬할 수 있다. 단, 이 때의 정렬은 제자리 정렬로 호출한 원본 리스트의 내부 원소들의 순서를 바꾸게 된다. 실제로 메모리 사용량을 극히 제한하는 특수한 상황이 아니면 제자리 정렬보다는 sorted 함수를 이용하는 것이 더 안전하다. 1. 역순으로 정렬하기 sort함수나 sorted 함수에서 reverse 파라미터에 True값을 주면 가능하다. 2. 정렬 조건 적용하기 정렬하고자 하는 연속열이 단순히 숫자값이나 문자열이라면 sorted 함수는 크기순 혹은 사전순으로 정렬한다. 별도의 정렬기준을 사용해야 할 필요가 있을 때는 key 파라미터를 사용하여 정렬 기준이 되는 값을 정할 수 있다. 예를 들어, 어떤 학생들의 리스트를 .. 더보기
Python 자료형 공부 - dictionary 딕셔너리(Dictionary): key를 통해 value를 얻는 자료구조 1. 딕셔너리 함수 1-1. keys: 딕셔너리의 a의 key만 모아 dict_keys 객체를 리턴한다. a = ["A": "a", "B", "b"] print(a.keys()) 리스트를 사용하는 것과 차이가 없지만 리스트 고유함수는 수행할 수 없다. a.keys()에 list 추가시 리스트 반환이 가능하다. arr = list(a.keys()) 1-2. items: key, value 의 튜플로 묶은 값을 dict_items 객체로 돌려준다. 1-3. in: 딕셔너리 안에 요소가 있는지 조사 할 수 있다. 2. 딕서너리에서 Key를 사용해 Value 얻기 a = {'name':'pey', 'phone':'0119993323', '.. 더보기
Python 자료형 공부 2 - array Python3으로 코딩테스트를 진행하던 중, 잦은 버그가 발생하는 부분과 기억해야할 팁들을 위주로 정리해보고자 한다. 1. 2차원 배열 선언 w = 3 h = 5 Matrix = [[0 for x in range(w)] for y in range(h)] 위와 같이 혹은 다음 아래와 같이 선언이 가능하다. h = 5 Matrix = [[0] * w for i in range(h)] 그러나, Matrix = [[0] * n] * n 위와 같이 선언하게 되면, 각 행은 서로의 행을 복사하였기 때문에 우리가 원하는대로 배열을 사용하기 어렵다. 예를 들면, 1행의 값을 변경시키면 나머지 2 ~ n 행 모두 같은 값으로 변경이 된다. 2. 리스트 값 추가 리스트는 append 메소드를 이용하여 값을 추가할 수 있다.. 더보기
Python 입력값 저장하기 input 함수 사용하기 x = input() x = input('문자열을 입력하세요: ') 1번과 같이 지정할 경우, 입력 값이 변수 x에 저장하게 된다. 2번과 같이 지정할 경우, '문자열을 입력하세요: ' 처럼 안내문구가 먼저 나오고, 사용자가 입력한 값이 x에 배정된다. 입력 값을 정수로 변환하기 입력받은 문자열을 숫자(정수)로 만들어주어야 합니다. 변수 = int(input()) or 변수 = int(input('prompt>> ;)) 다음과 같은 방법을 사용하여 입력 값을 정수로 변환할 수 있습니다. 두 숫자의 합 구하기 이번에는, 숫자를 두 개 입력받아서 두 숫자의 합을 구해보는 예제입니다. a, b = input('숫자 두 개 입력하세요: ').split.. 더보기
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' 이 출력됩니다. 리스트를 큐로 사용하기 .. 더보기
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;.. 더보기

반응형