Có, nằm trong khoảng từ 1 đến n , nhưng nó gần với 1 hơn n . Là gì log ( n ) ? Hàm log là hàm nghịch đảo của lũy thừa. Hãy để tôi bắt đầu với số mũ và bạn sẽ hiểu rõ hơn về logarit là gì.log(n)1n1nlog(n)
Hãy xem xét hai số, và 2 100 . 2 100 là 2 nhân với chính nó 100 lần. Bạn có thể với một số nỗ lực đếm 100 số, nhưng bạn có thể đếm 2 100 không? Tôi cá là bạn không thể. Tại sao? 2 100 là một con số lớn đến mức nó lớn hơn số lượng của tất cả các nguyên tử trong vũ trụ. Suy ngẫm về điều đó một lát. Đó là một con số khổng lồ đến nỗi nó cho phép bạn đặt cho mỗi nguyên tử một tên (số). Và số lượng nguyên tử trong móng tay của bạn có lẽ là hàng tỷ. 2 100 nên là đủ cho bất cứ ai (ý định chơi chữ :)).100210021002100100210021002100
Bây giờ, giữa hai số, và 2 100 , 100 là logarit của 2 100 (trong cơ sở 2 ). 100 tương đối là một con số nhỏ hơn 2 100 . Bất cứ ai cũng nên có 100 vật dụng khác nhau trong nhà của họ. Nhưng, 2 100 là đủ tốt cho vũ trụ. Nghĩ về nhà vs vũ trụ khi nghĩ về log ( n ) và n .10021001002100210021001002100log(n)n
Trường hợp lũy thừa và logarit đến từ đâu? Tại sao họ rất quan tâm đến khoa học máy tính? Bạn có thể không nhận thấy, nhưng lũy thừa là ở khắp mọi nơi. Bạn đã trả lãi cho thẻ tín dụng? Bạn vừa trả một vũ trụ cho ngôi nhà của bạn (Không quá tệ, nhưng đường cong phù hợp). Tôi muốn nghĩ rằng lũy thừa xuất phát từ quy tắc sản phẩm, nhưng những người khác được chào đón để đưa ra nhiều ví dụ. Quy tắc sản phẩm là gì, bạn có thể yêu cầu; Và tôi sẽ trả lời.
Giả sử bạn có hai thành phố và B , và có hai cách để đi giữa chúng. Số lượng đường dẫn giữa chúng là gì? Hai. Đó là chuyện nhỏ. Bây giờ hãy nói, có một thành phố C khác , và bạn có thể đi từ B đến C theo ba cách. Hiện tại có bao nhiêu con đường giữa A và C ? Sáu, phải không? Làm thế nào bạn có được điều đó? Bạn đã đếm chúng? Hay bạn đã nhân chúng? Dù bằng cách nào, thật dễ dàng để thấy rằng cả hai cách đều cho kết quả tương tự nhau. Bây giờ nếu bạn thêm một thành phố D có thể đạt được từ C theo bốn cách, có bao nhiêu cách giữa A và DABCBCACDCAD? Đếm nếu bạn không tin tưởng tôi, nhưng nó là bằng là 24 . Bây giờ, nếu có mười thành phố và có hai con đường từ thành phố này sang thành phố khác, và chúng được sắp xếp giống như chúng nằm trên một đường thẳng. Có bao nhiêu con đường từ đầu đến cuối? Nhân chúng nếu bạn không tin tưởng tôi, nhưng tôi sẽ nói với bạn là có 2 10 , là 1024 . Thấy rằng 2 10 là mũ kết quả của 10 và 10 là logarit của 2 10 . 10 là một con số nhỏ so với 1024 .2⋅3⋅42421010242101010210101024
Các hàm logarit là n gì n là 2 n (lưu ý rằng 2 là của logarit cơ sở). Nếu bạn nhân log b ( n ) với b lần (lưu ý rằng b là cơ sở của logarit), bạn sẽ nhận được n . log ( n ) rất nhỏ, quá nhỏ so với n , đó là kích thước của ngôi nhà của bạn trong đó n là kích thước của vũ trụ.log2(n)nn2n2logb(n)bbnlog(n)nn
Trên một lưu ý thực tế, các thực hiện rất giống với các hàm hằng. Chúng phát triển với n , nhưng chúng phát triển rất chậm. Nếu bạn đã tối ưu hóa một chương trình để chạy trong thời gian logarit mà mất một ngày trước đó, bạn có thể sẽ chạy nó theo thứ tự vài phút. Kiểm tra chính mình với các vấn đề trên Project Euler.log(n)n