Numéro de l'accroissement de sous-séquences dans la séquence donnée?

Vous avez entendu parler du problème bien connu de trouver le plus longue sous-suite croissante. L'algorithme optimal a O(n*log(n))complexité.

Je pensais au problème de trouver tous croissante de sous-séquences dans la séquence donnée. J'ai trouvé la solution pour un problème où nous avons besoin de trouver un nombre croissant de sous-séquences de longueur k, qui a O(n*k*log(n)) complexité (où n est une longueur de la séquence).

Bien sûr, cet algorithme peut être utilisé pour mon problème, mais ensuite, la solution a O(n*k*log(n)*n) = O(n^2*k*log(n)) de complexité, je suppose. Je pense qu'il doit y avoir un mieux (je veux dire - plus rapide) de la solution, mais je ne sais pas comme encore.

Si vous savez comment résoudre le problème de la recherche de tous croissante de sous-séquences dans la séquence donnée dans optimal de l'heure/de la complexité (dans ce cas, optimal = mieux que O(n^2*k*log(n))), s'il vous plaît laissez-moi savoir à ce sujet.

À la fin: ce problème n'est pas des devoirs à faire. Il y était mentionné sur mon exposé d'un problème de la plus longue sous-suite croissante et j'ai commencé à penser à l'idée générale de tous croissante de sous-séquences dans la séquence donnée.

Vous devez donner un exemple.

OriginalL'auteur exTyn | 2011-01-08