최근에 인터뷰에서 기술적 인 질문에서 제기 된 다양한 알고리즘의 Big-O와 관련된 몇 가지 질문을 받았습니다. 나는 이것에 대해 잘 수행하지 못했다고 생각합니다. 10 년 동안 알고리즘의 Big-O를 계산하도록 요청 받았던 프로그래밍 과정을봤을 때, 저는 'Big-O'에 대해 하나의 토론을하지 않았습니다. 나는 일하거나 디자인했다. 저는 다른 팀원들과 많은 토론에 참여해 왔으며 코드의 복잡성과 속도에 관해 함께 연구 한 건축가들과 함께 해왔지만 실제 프로젝트에서 Big-O 계산을 실제로 사용한 팀은 본 적이 없습니다. 토론은 항상 "아웃 데이터에 대한 우리의 이해를 고려해 볼 때 더 효과적이고 효율적인 방법이 있습니까?" 절대로 "이 알고리즘의 복잡성은 무엇입니까?"'현실 세계'에서 Big-O 복잡성 평가를 사용합니까?
사람들이 실제로 코드에서 "Big-O"에 대한 토론을 실제로했는지 궁금합니다.
그게 내가 생각한 것이지만, 인터뷰는 실제로 '여기에 어떤 알고리즘을 사용할 지 말해 주시겠습니까?' 그리고 '그 알고리즘의 복잡성은 무엇입니까'. – beggs
@ Beggs :이 지식은 각 상황에서 적절한 알고리즘을 사용할 수 있어야합니다. 복잡성을 모른 채 어떻게 적절한 것을 고를 수 있습니까? –
@ gs, 나는 동의하지만 인터뷰에서 알고리즘의 Big-O을 인용 할 수 있습니까? 간단한 정렬 및 트리 삽입과 같은 것 이외에도 병합 정렬이 버블 정렬보다 낫다는 것을 알고 있지만 더 복잡한 것에 대해 이야기하기 시작할 때 복잡성을 계산하는 데 시간을 할애 할 필요가 있습니다. – beggs