tjdgns9246   2년 전

아래는 제 소스입니다.

질문드리고자 싶은게, 출력 부분에서 printf()와 puts()의 차이점에 궁금증이 있습니다.

아래의 소스는 puts()를 사용했습니다. (printf()를 썼을때보다 12ms정도 빠릅니다.)

puts()와 printf()가 invoke할 때 속도가 12ms 차이날 만큼 차이가 큰가요?

다른 분들은 100ms 안으로 문제를 해결하셨던데...

제 소스를 실행할 때 어디서 시간을 잡아먹는지 알 수 있을까요?

시간복잡도는 3n - 3으로 생각하고 있는데, 제가 맞나요?

고수분들의 답변 기다립니다.ㅠㅠ

sgchoi5   2년 전

전역 변수로 배열 사용하면, 동적 메모리 사용하는 것 보다 시간이득이 생기지 않나요? 저는 이게 더 궁금하네요..
memory alloc / free 하는 방식을 굳이 써야 할 필요는 없는 것으로...

tjdgns9246   2년 전

@sgchoi5 아.. 그런 부분에서 시간을 잡아먹나요?

제가 습관이 약간.. 필요한 메모리의 부분만 할당하는게 습관이 되서

값을 입력받고 해당 값에 필요한 메모리만 할당하는데.. 이 방식이 안좋은 방식인가요?? ㅠㅠ

sgchoi5   2년 전

동적 메모리 사용이 문제가 되는 건 아니고, 알고리즘 풀이에서는 문제 그 자체에 집중하는게 더 중요하다고 배웠습니다

책이나 세미나에 대부분 나오는 내용....

alloc memset free 이런 번거로운 코드가 나중에 더 복잡한 문제에서 코드를 더 어렵게 만드는 것 같네요

전역 변수 선언하면 초기화가 되니 보통 전역변수 쓰게 됩니다..


tjdgns9246   2년 전

@sgchoi5 그렇군요... 책이나 세미나는 보거나 가본 적이 없어서ㅠㅠ... 독학으로 하고있어서 부족한 점이 많네요.

정말 좋은 조언 감사합니다. 앞으로 참고할게요 ^^!

sgchoi5   2년 전

초보자용 세미나 자료입니다

http://gooddaytocode.blogspot.kr/search/label/%5B003%5D%20시험%20초보자를%20위한%20추천%20읽을꺼리


댓글을 작성하려면 로그인해야 합니다.