-
선형 구조 - 스택, 큐
스택(Stack) 선형 구조중 하나로 Last In First Out(LIFO)의 특징을 갖음. 입력(push)과 출력(pop)이 한쪽(top)에서만 일어남 Top 포인터 : 가장 위에 있는 자료를 가르키는 포인터, 삽입&삭제시 이용 (Top 포인터는 스택이 비어있을 때 = -1, 다 차있을 때 = n-1) 스택이 꽉차면 더이상 삽입할 수 없음 -> OverFlow 스택이 비게되면 더이상 삭제할 수 없음 -> UnderFlow 검색시 : O(n) 삽입, 삭제시 : O(1) 큐(Queue) 선형 구조중 하나로 First In...
-
선형 구조 - 배열, 연속 리스트, 연결 리스트
배열(Array) 인덱스를 통해 Value에 접근함. 배열 가운데의 원소가 삭제되면 null 값이 들어감. (밀도≠1) 인덱스를 통한 검색시 : O(1) 연속 리스트(ArrayList) = 선형 리스트, 순서 리스트 배열과 같이 인덱스를 통해 Value에 접근함. 배열 가운데 원소가 삭제되면 null값이 들어가지 않고 뒤의 원소가 앞으로 땡겨져 채워넣음 (밀도=1) -> 삽입, 삭제시 원소의 이동이 일어나기 때문에 번거롭다. 연속적으로 놓여있어 검색은 용이하지만 삽입, 삭제시 용이하지 않음. 인덱스를 통한 검색시 : O(1) 삽입, 삭제시 :...
-
시간복잡도
● Big-O 표기법(빅오 표기법) - 실행 시간의 상한(최대시간), Worst O(n2): 선택 정렬, 버블 정렬, 삽입 정렬, 쉘 정렬, 퀵 정렬 O(n log n) : 병합 정렬, 힙 정렬 O(n): 선형 탐색 O(log n): 이진 탐색 O(1) ● Big-Ω 표기법(빅오메가 표기법) - 실행 시간의 하한(최소시간), Best Ω(n2): 선택 정렬, 버블 정렬 Ω(n log n) : 병합 정렬, 퀵 정렬, 힙 정렬 Ω(n) : 삽입 정렬, 쉘 정렬 Ω(log n) Ω(1): 선형 검색, 이진 검색
-
계층형 쿼리
한 테이블 내에서 칼럼간의 계층을 표시할 때 사용 -- ex) dcode=0001인 부서에서 시작해 pdept 방향으로 계층 작성 SELECT level, lpad(dname, LEVEL*6, '*') AS 부서명 FROM dept2 CONNECT BY dcode = PRIOR pdept -- dcode -> pdept START WITH dcode = 0001; CONNECT BY : 칼럼간의 연결관계 START WITH : 계층을 나타내기 시작할 칼럼값 PRIOR : 기준설정(방향) LEVEL : 계층의 깊이
-
서브쿼리
쿼리문 안에 또 다른 쿼리문이 들어있음. 서브쿼리의 결과 값을 사용하여 메인쿼리를 수행함. 서브쿼리는 WHERE 절의 연산자 오른쪽에 위치해야 하며 반드시 괄호를 사용해야함 서브쿼리문을 먼저 확인해보는 것이 오류를 줄이는 방법 메인쿼리문에서 지정한 별칭은 서브쿼리문에서 사용할 수 없음 일반 서브쿼리문은 결과를 하나의 값처럼 사용 단일행 서브쿼리 : 서브쿼리의 결과가 하나만 산출 결과가 하나만 나오는 다중행함수 등이 서브쿼리에 들어감 단일행 연산자 : >, >=, <, <=, =, != SELECT * FROM table WHERE column2 > ( SELECT colum...