Supposons que nous lisions une séquence de nombres, un par un. Comment trouver le plus petit élément simplement en utilisant la mémoire de cellule et en temps linéaire ( ). Je pense que nous devrions enregistrer les premiers termes de la séquence et lorsque nous obtenons le 'ème terme, supprimer un terme qui nous assure qu'il ne peut pas être le ième élément le plus petit, puis enregistrer ' ème terme. Nous devrions donc avoir un indicateur qui montre ce terme inutilisable à chaque étape et cet indicateur devrait être mis à jour à chaque étape rapidement. J'ai commencé avec "max"; mais il ne peut pas se mettre à jour rapidement; Signifie que si nous considérons max, alors lors de la première suppression, nous manquons le max et nous devons rechercher max dans et sa cause temps qu'il n'est pas linéaire. Peut-être devrions-nous enregistrer les premiers termes de la séquence de manière plus intelligente.
Comment puis-je résoudre ce problème?