sungmin69355 / tistory-comments

0 stars 0 forks source link

100 #4

Open utterances-bot opened 1 year ago

utterances-bot commented 1 year ago

[mongoDB, JavaScript] 시간복잡도를 줄여보자! join이 안된다고??

회사에서 기존 서비스 기능들을 기능 개선을 하고 있다. mongoDB를 사용하는데 단점이…. join이 안된다…. ㅠㅠ 예를 들어 a class가 있는데 이 class에서 하나의 필드가 포인터로 b class의 기본키나 다른 키를 가리키고 있다고 하면 mysql이나 다른 곳에는 join기능이 있어 한번 쿼리로 b class의 객체까지

https://applepick.tistory.com/100

p-ej commented 1 year ago

감사합니다 글 잘봤습니다 하나 궁금한게 있는데요 코드의 아래부분에서 aList.forEach(a => { if (a.name.split("$")[1] in list) { a.name = list[a.name.split("$")[1]]; } });

forEach로 n번을 돌리고 split함수를 이용했을때 split자체의 함수의 시간 복잡도도 O(n)으로 알고있는데 루프 안에서 split이 돌아가면 여기도 O(n^2)이 되는건가요 ??

sungmin69355 commented 1 year ago

엄청 예전에 작성한 글인데 읽어 주셔서 감사합니다! split 자체는 O(N)이 맞긴 하나 위에 상황에서는 항상 일관적인 형식으로 $ 하나만 들어온다고 가정하여 생각했던 것 같습니다.