This problem asks us to repeatedly delete the first occurrence of the  dịch - This problem asks us to repeatedly delete the first occurrence of the  Việt làm thế nào để nói

This problem asks us to repeatedly

This problem asks us to repeatedly delete the first occurrence of the string T from a larger string S until T no longer appears in S. The literal translation of this process looks something like this:

while S.find(T)
S.erase(S.find(T))

Unfortunately this algorithm is a bit too slow. Each call to find takes O(TS) (assuming the underlying implementation uses basic string matching). Since the loop can repeat at most ST times, it follows this has the runtime O(S2). Additionally each erase call takes O(S) time meaning we spend O(S2T) time doing erase calls which is also too slow.

There are a couple of ways to overcome this performance problem. Perhaps the simplest is to build the final string one character at a time; whenever the end of the string matches T simply delete the end. Deleting the end of a string is more efficient than the middle of the string because no data needs to be moved after it. Using simple string comparisons this algorithm has runtime O(TS) which is fast enough to pass all test data.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
Vấn đề này đòi hỏi chúng ta để liên tục xoá sự kiện đầu tiên của chuỗi T từ một chuỗi lớn hơn S cho đến khi T không còn xuất hiện trong S. Bản dịch chữ của quá trình này sẽ như thế này:trong khi S.find(T) S.Erase(S.find(T))Thật không may, thuật toán này là một chút quá chậm. Mỗi cuộc gọi để tìm mất O(TS) (giả sử thực hiện cơ bản sử dụng cơ bản chuỗi kết hợp). Kể từ khi vòng lặp có thể lặp lại tối đa ST lần, nó sau này có thời gian chạy O(S2). Ngoài ra, mỗi cuộc gọi xóa mất thời gian O (S) có nghĩa là chúng tôi dành thời gian O(S2T) làm xóa cuộc gọi cũng là quá chậm.Có là một vài cách để khắc phục vấn đề hiệu suất này. Có lẽ các đơn giản nhất là để xây dựng chuỗi cuối cùng một ký tự tại một thời gian; bất cứ khi nào kết thúc của chuỗi phù hợp với T chỉ đơn giản là xóa hết. Xóa đầu của một chuỗi là hiệu quả hơn giữa các chuỗi vì không có dữ liệu cần phải được di chuyển sau khi nó. So sánh chuỗi đơn giản bằng cách sử dụng thuật toán này có thời gian chạy O(TS) đó là đủ nhanh để vượt qua tất cả các dữ liệu thử nghiệm.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
Vấn đề này đòi hỏi chúng ta phải liên tục xóa sự xuất hiện đầu tiên của chuỗi T từ một chuỗi S lớn hơn cho đến T không còn xuất hiện trong S. Các dịch theo nghĩa đen của quá trình này có vẻ gì đó như thế này: trong khi S.find (T) S.erase (S .find (T)) Thật không may thuật toán này là một chút quá chậm. Mỗi cuộc gọi để tìm mất O (TS) (giả định các cài đặt cơ sở sử dụng hợp chuỗi cơ bản). Kể từ khi vòng lặp có thể lặp lại nhiều nhất là ST lần, nó sau này có thời gian chạy O (S2). Ngoài ra mỗi cuộc gọi xóa mất O (S) thời gian có nghĩa là chúng ta dành O (S2T) thời gian làm xóa các cuộc gọi mà cũng là quá chậm. Có một vài cách để khắc phục vấn đề hiệu suất này. Có lẽ đơn giản là để xây dựng một chuỗi thức nhân vật tại một thời điểm; bất cứ khi nào kết thúc của chuỗi trùng với T chỉ cần xóa cuối cùng. Xóa cuối của một chuỗi là hiệu quả hơn giữa các chuỗi vì không có dữ liệu cần phải được di chuyển sau khi nó. Sử dụng chuỗi so sánh đơn giản thuật toán này đã chạy O (TS) là đủ nhanh để vượt qua tất cả các dữ liệu thử nghiệm.






đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2025 I Love Translation. All reserved.

E-mail: