On suppose que l'entrée est spécifiée comme un tableau d'objets de construction, où chaque bâtiment a un certain nombre de résidents d'une sa distance depuis le début de la rue .algorithme pour placer une boîte aux lettres pour minimiser la distance totale que les résidents se déplacent pour obtenir leur courrier
Distance totale = SOMME (distance [i] * #residents [i])
Je trouve ici deux questions qui sont semblables, mais ils ont des exigences légèrement différentes:
Minimizing weighted sum: La solution de cette question trouve le chemin minimum traversant tous les points. Ici, je cherche une somme minimale des distances totales de chaque bâtiment à l'endroit où la boîte aux lettres est.
Minimum Total Distance From Locations: Il utilise des coordonnées 2D, et plus important, la solution ne tient pas compte du poids (nombre de résidents) sur chaque emplacement.
J'ai vu ce problème lors de la lecture des éléments des entrevues de programmation (livre vraiment sympa, d'ailleurs), et cela est répertorié comme une variante de l'algorithme de QuickSelect. Considérant que la médiane est le point qui minimise la somme des distances, il semble que la solution impliquerait la sélection rapide pour trouver le bâtiment à la position «médiane» de la rue en O (N).
Mais je ne peux pas comprendre comment compte les résidents de chaque bâtiment et garder toujours la solution linéaire.
Est-ce que la boîte aux lettres est actuellement présente au début de la rue ou vous voulez trouver un point où si nous plaçons la boîte aux lettres réduirait la distance à d'autres points? – zenwraight
Pouvez-vous m'envoyer un lien vers ce problème ou me dire le numéro de la page du problème dans le livre – zenwraight
@zenwraight sûr, c'est la deuxième option, trouver un endroit pour mettre la boîte aux lettres po Dans le livre, le problème est la dernière variante de la question 12.9 - trouver le plus grand kth (page 201 sur ma copie). Je pense que la recherche de prévisualisation Google books montre que la page: https://www.google.com/search?tbm=bks&q=Elements+of+Programming+Interviews+variant+mailbox+total+distance – carlos22