네비게이션 어플
두 회사에서 각각 네비게이션 어플을 출시했다고 가정해 보세요. 둘 다 디자인이 훌륭하고, 사용성도 나쁘지 않습니다. 그러면 저는 어떤 어플을 사용해야 할까요?
우선 길을 정확하게 알려주고 도착 시간도 정확하게 알려줘야 합니다. 틀린 정보를 알려주는 어플은 그냥 안 쓰게 되겠죠. 그리고 두 번째로는 길을 빨리 알려줘야 합니다. 만약 길 한 번 찾아주는 게 2분씩이나 걸리면 답답해서 못 쓰겠죠.
결론적으로 누가 더 정확하고 효율적인 알고리즘을 사용하는지가 중요합니다. 서비스의 성공 여부가 알고리즘에 달려 있는 것입니다.
영화 어플
예전에는 영화를 보고 싶으면 비디오나 DVD를 빌려 봤었는데, 요즘은 넷플릭스나 왓챠플레이 같은 서비스를 구독해서 볼 수 있습니다.
영화를 직접 검색해서 볼 수도 있지만 보통은 넷플릭스가 추천해 주는 영화를 보는데요. 그냥 평점 순으로 추천해 주는 게 아니라, 데이터를 기반으로 개개인에 맞춰 영화를 골라주는 것입니다. 이것도 알고리즘의 역할이죠.
넷플릭스에서는 추천 알고리즘을 개선하고 싶어서 대회를 열기도 했었는데, 1등한 팀은 무려 10억원이 넘는 상금을 받아갔습니다. 그만큼 넷플릭스라는 서비스에게 알고리즘이 중요한 역할을 차지하고 있는 거죠.
알고리즘의 중요성
네비게이션이나 영화 어플 말고도, 알고리즘은 거의 모든 분야에서 핵심적인 역할을 맡고 있습니다.
예전에는 서비스를 만드는 것 자체만으로도 의미가 있었는데, 이제는 소프트웨어 개발에 대한 진입 장벽이 많이 낮아졌기 때문에 무언가 차별성이 필요합니다. 기술적으로 얼마나 잘 구현되었는지, 즉 알고리즘이 얼마나 좋은지에 따라 서비스의 성패가 갈리는 경우도 많습니다.
'Algorithm > 알고리즘 패러다임' 카테고리의 다른 글
공간 복잡도 (0) | 2023.07.09 |
---|---|
주요 시간 복잡도 정리 (2) | 2023.07.09 |
알고리즘 평가 주의 사항 (0) | 2023.07.09 |
정렬 알고리즘 비교 (0) | 2023.07.09 |
알고리즘이란? (0) | 2023.07.09 |