컴퓨터과학CS2 시간복잡도 시간복잡도란 "특정 알고리즘이 어떤 문제를 해결하는 데 걸리는 시간"이다. 하지만 사용자마다 사양의 차이가 있어 시간을 측정해서 알고리즘을 평가하기에는 어려움이 있기에 시간을 측정하기보단 코드에서 성능에 많은 영향을 주는 부분을 찾아 예측하는것이다.즉, 시간복잡도는 알고리즘의 효율성을 평가하기 위한 지표 중 하나로, 입력 크기(데이터의 양)가 증가함에 따라 알고리즘의 수행 시간이 어떻게 변하는지를 수학적으로 나타낸 것이다. 시간복잡도는 프로그램의 실행 속도를 예측하고, 성능을 비교할 때 중요한 개념이다. 시간복잡도를 나타내는 표기법에는 최선의 경우인 한번에 찾는 Big- Ω(빅오메가)최악의 경우인 배열의 길이만큼 걸리는 Big-O(빅오)평균의 경우인 배열의 길이 중간 만큼 걸리는 Big- Θ(빅세타)가 .. 2024. 10. 22. 자료구조와 알고리즘 자료구조는 데이터가 어떤 구조로 저장되고 어떻게 사용되는지를 말한다가장 단순한 자료구조로는 변수가 있다.그외에도 배열, 연결리스트 등의 다양한 자료 구조가 있다. 알고리즘은 특정 문제를 해결하기 위한 일련의 단계적 절차나 방법이다.단순하게 말하면 변수 3개의 평균을 구할때 그 방법으로3개의 변수를 모두 더한뒤 3으로 나눈다 같은 방식이다.자료구조마다 알고리즘의 접근방식이 달라질 수 있고 같은 자료구조와 같은 답에도 여러가지의 알고리즘이 있을 수 있다.알고리즘에도 정렬알고리즘, 검색알고리즘들을 비롯해 다양한 알고리즘들이 있다. 자료구조와 알고리즘의 중요성에 대해 이야기 하자면 효율적인 자료구조와 알고리즘의 선택은 프로그램의 성능과 확장성에 큰 영향을 미친다. 예를 들어, 대량의 데이터를 처리할 때 적절한 .. 2024. 10. 18. 이전 1 다음