Big O رفتار الگوریتم را با رشد ورودی (n) توصیف میکند، نه زمان دقیق به ثانیه.
- O(1): زمان ثابت؛ خواندن یک عنصر از آرایه با اندیس.
- O(log n): جستوجوی دودویی در آرایهٔ مرتب.
- O(n): یک حلقهٔ ساده روی همهٔ عناصر.
- O(n log n): مرتبسازیهای کارآمد مثل merge sort.
- O(n²): دو حلقهٔ تو در تو؛ با افزایش ورودی بهسرعت کند میشود.
// O(n)
for (const x of items) total += x;
// O(n^2)
for (const a of items)
for (const b of items) compare(a, b);هنگام انتخاب الگوریتم، هم رشد زمان و هم حافظه را در نظر بگیرید؛ اما برای ورودیهای کوچک، سادگی کد مهمتر از بهینهسازی است.




