[Chuỗi] – Thuật toán tách chuỗi

Tách chuỗi cũng là bài toán thường gặp và trong hầu hết các ngôn ngữ lập trình đều hỗ trợ sẵn yêu cầu này. Tuy nhiên, trong bài này tôi vẫn muốn trình bày lại để bạn có trải nghiệm thêm.

Yêu cầu

Viết chương trình khởi tạo một chuỗi, sau đó nhập vào một ký tự ngăn cách, sau đó dựa vào ký tự đó để tách chuỗi đó ra thành các chuỗi con và in các chuỗi con ra.

Ví dụ: Nguyen Van An, ký tự phân cách là dấu ‘ ’

Kết quả:

Nguyen

Van

An

Phân tích và tìm cách giải

  • Đầu vào: s={Nguyen Van An}, Ký tư phân cách ‘ ’
  • Đầu ra: In ra các dòng:

Nguyen

Van

An

Phân tích

Thuat toan tach chuoi

– Cần duyệt qua tất cả các ký tự của chuỗi S

  Kiểm tra nếu ký tự bằng ký tự ngăn cách

    + In chuỗi con ra

    + Xóa chuỗi con để nạp lại từ đầu

  Nếu không

    +Thêm ký tự vào chuỗi con

Cách biểu diễn thuật toán

Trong trường hợp này, tôi sử dụng ngôn ngữ giả.

Declare   String s={Nguyen Van An}, sc=’’

Char c=’ ’

Int i

Loop i from 0 to s.length -1

   If s[i]=c

      Print sc

      sc=’’

   Else

      sc=sc+s[i]

Đến đây thì chuỗi đã được tách.

Bài tiếp: Các thuật toán về danh sách đối tượng

Bài trước: Thuật toán tìm chuỗi con

Đối tác tuyển dụng