Liệt kê tất cả hoán vị của array rồi check từng hoán vị coi hoán vị nào là mảng tăng dần (vì chỉ có duy nhất 1 hoán vị tăng dần thôi) thì chọn ra hoán vị đó
(Dùng std::permutation để liệt kê hoán vị)
http://en.cppreference.com/w/cpp/algorithm/next_permutationhttp://en.cppreference.com/w/cpp/algorithm/next_permutation
Thuật toán này chỉ có độ phức tạp là O(2 ^ n) thôi
Nên đặt tên thuật toán này là NCMV sort
Thêm thuật toán sắp xếp này nữa sẽ là 16
Liệt kê tất cả hoán vị của array rồi check từng hoán vị coi hoán vị nào là mảng tăng dần (vì chỉ có duy nhất 1 hoán vị tăng dần thôi) thì chọn ra hoán vị đó
(Dùng std::permutation để liệt kê hoán vị)
http://en.cppreference.com/w/cpp/algorithm/next_permutationhttp://en.cppreference.com/w/cpp/algorithm/next_permutation
Thuật toán này chỉ có độ phức tạp là O(2 ^ n) thôi
Nên đặt tên thuật toán này là NCMV sort
Thuật toán rất khó thực hiện vì phải dùng dến đệ quy.
Trong c++ có nhiều hàm vui nhỉ??