10818번 - 최소, 최대
배열 을 선언에 수를 넣는 방법이 주관적으로 2가지 방법이 있는데
1.
int a;
cin >> a;
int * arr = new int[a];
for(int i = 0 ; i < a ; i++)
cin >> a[i];
동적할당을 하는 방법과
2.
int a, arr[1000000]
공간을 미리 정해주는 방법이 있습니다.
제가 알고리즘을 풀어 나가는데 어떤 방법을 고수하는것이 좀 더 도움될까요??
동적할당의 시간 vs 메모리공간의 싸움이라는 것인데 최적화 관점에서는 2번이 좀더 좋을까요???
문제 풀이를 하면서 동적 할당을 직접 신경써야 할 일은 그다지 많지 않았습니다. 입력 크기의 상한이 정해져 있기도 하고, 크기가 동적으로 변하는 경우는 대부분 라이브러리를 통해 해결하지 필요한 만큼만 쓰기 위해 동적할당을 하는 건 느릴 뿐더러 어차피 최대 크기 입력에서는 정적으로 하는 것과 별반 다를 게 없어집니다.
감사합니다
댓글을 작성하려면 로그인해야 합니다.
jaeyoon8783 4년 전
배열 을 선언에 수를 넣는 방법이 주관적으로 2가지 방법이 있는데
1.
int a;
cin >> a;
int * arr = new int[a];
for(int i = 0 ; i < a ; i++)
cin >> a[i];
동적할당을 하는 방법과
2.
int a, arr[1000000]
cin >> a;
for(int i = 0 ; i < a ; i++)
cin >> a[i];
공간을 미리 정해주는 방법이 있습니다.
제가 알고리즘을 풀어 나가는데 어떤 방법을 고수하는것이 좀 더 도움될까요??
동적할당의 시간 vs 메모리공간의 싸움이라는 것인데 최적화 관점에서는 2번이 좀더 좋을까요???