Tenir compte de ce tableau imbriqué des dates et des noms:: Découvrez la séquence dates
var fDates = [
['2015-02-03', 'name1'],
['2015-02-04', 'nameg'],
['2015-02-04', 'name5'],
['2015-02-05', 'nameh'],
['1929-03-12', 'name4'],
['2023-07-01', 'name7'],
['2015-02-07', 'name0'],
['2015-02-08', 'nameh'],
['2015-02-15', 'namex'],
['2015-02-09', 'namew'],
['1980-12-23', 'name2'],
['2015-02-12', 'namen'],
['2015-02-13', 'named'],
]
Comment puis-je identifier les dates qui sont hors de séquence. Je me fiche de savoir si les dates se répètent, ou si je saute, j'ai juste besoin de celles qui ne sont pas en ordre. -À-dire, je reviens:
results = [
['1929-03-12', 'name4'],
['2023-07-01', 'name7'],
['2015-02-15', 'namex'],
['1980-12-23', 'name2'],
]
(« Namex » est moins évident, mais ce n'est pas dans l'ordre général de la liste.)
Cela semble être une variation sur la plus longue augmentation Subsequence (LIS), avec la mise en garde qu'il pourrait y avoir des dates répétées dans la séquence, mais ne devrait jamais revenir en arrière. Cas d'utilisation: J'ai trié et daté des enregistrements et j'ai besoin de trouver ceux dont les dates sont "suspectes" - peut-être une erreur de saisie - à signaler pour vérification.
NB1: J'utilise Javascript droit et pas un cadre. (Je suis dans le noeud, mais je cherche une solution sans paquetage donc je peux comprendre ce qui se passe ...)
Les tentatives méritent d'être partagées _toujours_.Vous pourriez être sur le bon chemin, ou sur un chemin totalement faux, mais votre tentative sera instructive et aidera à informer la façon dont nous présentons une réponse. Ne sois pas timide! :) – msanford
Quelle est la situation réelle ici qui vous oblige à le faire? – Ryan
@Ryan Bon point. Dans mon cas d'utilisation, il est hautement improbable (proche de 0) qu'il y ait deux sous-séquences de longueurs égales. – Trees4theForest