[Algorithm] 재귀함수와 스택

|

재귀함수
- 함수의 시작점이 다시 돌아가 자기 자신을 호출하는 것

재귀함수의 종류
- 전위 운행
- 중위 운행
- 후위 운행
- 단계 운행

예제 - Factorial
호출 구조




스택(Stack)
- 프로그램을 실행하는 데 필요한 공간

스택 프레임(Stack Frame)
- 하나의 메서드를 호출하는데 필요한 메모리
- 메서드 하나당 하나의 스택 프레임이 필요




플랫폼별 스택 크기
Windows IA32 - 64 KB
Windows IA64 - 320 KB
Linux IA32 - 128KB
Linux IA64 - 1024KB (1MB)
Windows x86_x64 - 128KB
Linux x86_x64 - 256 KB
Solaris Sparc - 512KB

스택 크기 조정 옵션
- Format : -Xss<size>[g|G|m|M|k|K]
- java -Xss512k myAPP


# Andorid Stack 크기 : 8KB / 256KB(MAX)


꼬리재귀
- 재귀함수에서 호출된 함수가 리턴 될 때 원래 자리로 돌아와야 하는 이유는 ​호출한 부분 다름에 다른 내용이 포함되어 있으면 그 내용을 계속 처리하기 위해서이다.
- 원래 위치로 돌아 갔을 때 할 일이 남아 있지 않기에 함수가 호출된 위치를 기억해 둘 필요 없음.

And

[Oracle] Partition Split

|

Partition Table 에 대해서 Split 하는 방법

상황
- RANGE Partition Table에서 2015년 03월 Partition을 생성하지 않고 2015년도 Partition을 생성한 경우

1. Split 할 Partition에 대해서 건수 확인
SELECT COUNT(1) AS CNT
FROM [OWN].[TAB] PARTITION(P201504);

2. [Split이전] Partition 에 대한 정보 확인
SELECT TABLE_OWNER,
TABLE_NAME,
PARTITION_NAME,
TABLESPACE_NAME,
HIGH_VALUE
FROM DBA_TAB_PARTITIONS
WHERE TABLE_NAME = '[TAB]';

3. Split Partition
ALTER TABLE [OWN].[TAB]
SPLIT PARTITION P201504 AT ('20150399999999')
INTO (PARTITION P201503, PARTITION P201504_02);

4. Partition Name 변경
ALTER TABLE [OWN].[TAB]
RENAME PARTITION P201504_02
TO P201504;

5. [Split이후]Partition 에 대한 정보 확인
SELECT TABLE_OWNER,
TABLE_NAME,
PARTITION_NAME,
TABLESPACE_NAME,
HIGH_VALUE
FROM DBA_TAB_PARTITIONS
WHERE TABLE_NAME = '[TAB]';

6. Split한 Partition 에 대해 연결된 Local Index Rename
ALTER INDEX [OWN].[TAB]_PK
RENAME PARTITION P201504_2 TO P201504;
ALTER INDEX [OWN].[TAB]_IX01
RENAME PARTITION P201504_2 TO P201504;

7. UNUSABLE Index에 대해서 Rebuild
ALTER INDEX [OWN].[TAB]_PK
REBUILD PARTITION P201503 ONLINE;
ALTER INDEX [OWN].[TAB]_PK
REBUILD PARTITION P201504 ONLINE;
ALTER INDEX [OWN].[TAB]_IX01
REBUILD PARTITION P201503 ONLINE;
ALTER INDEX [OWN].[TAB]_IX01
REBUILD PARTITION P201504 ONLINE;

8. Split이후 Partition에 대해서 건수 확인
SELECT COUNT(1) AS CNT
FROM [OWN].[TAB] PARTITION(P201503);

And

[LoadRunner] graph*.dat 파일에서 2번째 열

|

timestamp로 엑셀에서 치환하기

=(((A1/60)/60)/24) + DATE(1970,1,1) + (9/24)

마지막 (9/24)는 GMT + 값

And
prev | 1 | 2 | 3 | 4 | next