30/09/2018, 17:55

Cách chèn khoảng trống vào giữa các ký tự của một string?

Cho 1 string Result_1. Em cần tạo ra 1 string Result_2 : là các ký tự của Result_1 và có 1 dấu cách giữa chúng.
VD: Result_1 = abcde
=>> Result_2 = a b c d e
Bác nào chỉ hướng em với, em cảm ơn ạ.

Mai Anh Dũng viết 19:58 ngày 30/09/2018

Em duyệt qua từng phần tử của string rồi insert thêm khoảng trống là được.

http://www.cplusplus.com/reference/string/string/insert/

Em thử làm với gợi ý đó xem. Anh đang online ĐT không viết code được

Gió viết 20:09 ngày 30/09/2018

không nên dùng hàm insert vì dpt là O(|s|2)

void insert_space(string &str){
    string tmp=str;
    str.resize(2*str.size()-1);
    int i;
    for(i=0;i<str.size();++i){
        if(i%2){
            str[i]=' ';
        }else{
            str[i]=tmp[i/2];
        }
    }
}

#####code tự dưng mất xuống dòng kìa a @ltd

Mai Anh Dũng viết 20:01 ngày 30/09/2018

không nên dùng hàm insert vì dpt là O(|s|2)

Cảm ơn em, anh không biết cái này. Em có thể giải thích thêm được không, nghe hay đấy

Bài liên quan
0