Algoritmo per combinare gli intervalli di un segmento - aiuta a creare - pagina 4

 
Cerca su Google"il compito del commesso viaggiatore".
 
Олег avtomat:
Cerca"il compito del commesso viaggiatore" su Google

Lì c'è una sfida diversa.

 
Aleksey Vyazmikin:

Lì c'è una sfida diversa.

Certo, è un po' diverso. Soprattutto perché non hai nemmeno formulato bene il tuo problema.

Guarda i metodi di soluzione.

 

Sul problema del commesso viaggiatore:

.

 
Олег avtomat:

Certo, è un po' diverso. Soprattutto perché non hai nemmeno formulato bene il tuo problema.

Guarda i metodi di soluzione.

Quale punto manca nella formulazione? Dimitri ha trovato una soluzione basata sulle condizioni del problema, sembra averla presa bene.

Oleg avtomat:

Vedere i metodi di soluzione.

La questione non è il metodo di soluzione al primo stadio, ma l'adattamento dei dati iniziali allo stesso come nel problema classico.

Ci sono diversi metodi, io non sono un esperto in loro, quindi se c'è un'idea di quale dei metodi può essere adattato, poi segnalare, guarderemo e penseremo.

 
Aleksey Vyazmikin:

Quale punto manca nella formulazione? Dmitri ha trovato la soluzione in base alle condizioni del problema, sembra aver capito tutto correttamente.

La questione non è nel metodo di soluzione al primo stadio, ma nell'adattamento dei dati iniziali a simili, come nel problema classico.

Ci sono diversi metodi, io non sono un esperto in loro, quindi se c'è un'idea che metodo può essere adattato, poi segnalare, guarderemo e pensare.

Alexey, dov'è?

Tu, risolvendo il problema, hai raggiunto il primo livello di comprensione astratta e hai subito colpito un muro.

I segmenti... E se fossero sezioni di un cerchio?

Perché non formula il problema qui? Mentre è il fine settimana)))

 
Cerca il percorso più breve/più lungo tra due punti in un grafico. Solo qui ci possono essere diversi punti di partenza e diversi punti di arrivo.
Solo il grafico è orientato
Passare ricorsivamente attraverso tutto il grafico mantenendo il percorso migliore...
 
Алексей Тарабанов:

Alexei, dov'è?

Lì - nelle soluzioni del problema sui venditori ambulanti su Internet.

Alexei Tarabanov:

Tu, risolvendo il problema, hai raggiunto il primo livello di comprensione astratta di esso e hai subito colpito un muro.

Dimmi di più, non capisco l'idea.

Alexei Tarabanov:

I segmenti... E se fossero sezioni di un cerchio?

Suggerisci una soluzione con i cerchi - sono incuriosito.

Alexei Tarabanov :

Forse puoi formulare il problema qui? Mentre è il fine settimana)))

Quale problema? L'essenza del problema che vi ho esposto personalmente sopra.

 
Aliaksandr Hryshyn:
Cerca il percorso più breve/più lungo tra due punti in un grafico. Solo che ci possono essere diversi punti di partenza e diversi punti di arrivo.
Solo il grafico è orientato.
Passare ricorsivamente attraverso tutto il grafico mantenendo il percorso migliore...

Qui il percorso più breve/più lungo dovrebbe essere determinato non solo dalla vicinanza di due segmenti, ma anche dal loro valore. È come aggiungere il numero di abitanti di ogni città al problema dei commessi viaggiatori, e anche la condizione che non si può tornare indietro nella direzione del movimento precedente.

 
Aleksey Vyazmikin:

1. Sopra, Alexei Tarabanov ha scritto in dettaglio dove e in cosa rispondendo. Ma è una teoria - non ho ancora finito quello che mi serve.

È chiaro allora - non l'ho capito e ho appena eseguito due script - se l'insieme è diverso, si può valutare solo se gli insiemi sono uguali.

2. Penso che il terzo punto sia un'opzione migliore. Potresti modificare il codice per farlo funzionare correttamente con questa implementazione?

Va bene, originariamente ho scritto su tutte le combinazioni, ma nel processo, grazie a te, diventa chiaro che è molto costoso e abbiamo bisogno di un'opzione che sia empiricamente capace di essere buona come la forza bruta completa, e poiché la valutazione del segmento risultante è formata dai suoi pezzi, quindi presumo che limitando n combinazioni dai pezzi migliori e aggiungendone di nuove, possiamo avvicinarci alla migliore opzione da tutte le combinazioni possibili senza limite.

1. Completamente incomprensibile e già qualcosa di molto diverso.

2. Sono un po' pigro, non sono in vena. Fallo da solo. Ci sono tre array bidimensionali dichiarati nella struttura SAllVariants, con dimensione 2 sulla seconda dimensione. Dobbiamo cambiare 2 in 3 lì, e ovunque ci sia un'assegnazione negli elementi 0-esimo e 1-esimo, aggiungere un'assegnazione nel 2-esimo.

Qual è il compito in generale? Qual è lo scopo pratico? Forse si risolve in un modo diverso.