Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλημέρα,

έχω ένα σύστημα συντεταγμένων το οποιο αντι να το διαβασω σαν ενα δυσδιαστατο πινακα διαβαζω τις συντεταγμενες χ σε ενα μονοδιαστατο πινακα και τις συντεταγμενες y σε ενα αλλο. Γνωρίζω ότι μπορώ να το κάνω με ένα δυσδιαστατο αλλα θα εξηγήσω παρακάτω γιατί.

Στους πινακες αυτους που εχω βρισκω απο καθε σημειο την συνολικη αποσταση απο τα υπολοιπα. Ομως μετα θελω στις συντεταγμενες που εχω να βρω την ελαχιστη αποσταση.

 

Πως ομως θα αντιστοιχισω τις αποστασεις που εχω απο την παραπανω διαδικασια με το συστημα συντεταγμενων που εχω?

 

 

  • Απαντ. 48
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Δημοφιλείς Ημέρες

Συχνή συμμετοχή στο θέμα

Δημοσιευμένες Εικόνες

Δημοσ.

Δεν καταλαβαίνω το πρόβλημά σου.

Θα έχεις ένα δισδιάστατο πίνακα Νx2 όπου στην πρώτη στήλη θα είναι το χ και στην δεύτερη το y. Οι γραμμές του πίνακα αντιστιχούν στον αύξων αριθμό του σημείου. Θα έχεις ένα διπλό loop

όπου μέσα σ'αυτό θα υπολογίζεις την απόσταση. Μάλιστα αφού θέλεις μόνο ποια σημεία έχουν την ελάχιστη απόσταση μεταξύ τους δεν νομίζω ότι χρειάζεσαι πίνακα για να φυλάς τις αποστάσεις. Θέλεις και ακόμα δύο μεταβλητές όπου θα φυλάς τους αύξοντες αριθμούς αυτών των σημείων

Δημοσ.

έχω ένα σύστημα συντεταγμένων το οποιο αντι να το διαβασω σαν ενα δυσδιαστατο πινακα διαβαζω τις συντεταγμενες χ σε ενα μονοδιαστατο πινακα και τις συντεταγμενες y σε ενα αλλο.

Για να συννενοούμαστε, εγώ καταλαβαίνω πως έχεις ένα σύνολο σημείων και χρησιμοποιείς λάθος έκφραση στην περιγραφή. Σωστά;

 

Στους πινακες αυτους που εχω βρισκω απο καθε σημειο την συνολικη αποσταση απο τα υπολοιπα. Ομως μετα θελω στις συντεταγμενες που εχω να βρω την ελαχιστη αποσταση.

Την ελάχιστη απόσταση τίνος από τι;

Δημοσ.

Kαλημερα και στους 3:

@defacer: Εστω οτι εχω τις συντεταγμενες:

2 5
3 6
1 7
5 3

Σορτάρω τις συντεταγμενες του Χ αρα εχω 1 2 3 5 και βρισκω την αποσταση του καθενος απο τα άλλα δηλάδη 7 5 5 9
Σορταρω τις συντεταγμενες του Υ αρα εχω 3 5 6 7 και βρισκω την αποσταση του καθενος απο τα αλλα δηλαδη 9 5 5 7

Αρα για η αποσταση για το (2,5) ειναι 5+5=10. Ε αυτη την αντιστοιχιση δεν μπορω να κανω σκαλωνω. Δηλαδή πως από τους σορταρισμένους μου πίνακες θα καταλήξω στους αρχικούς.

@παπι με δυσδιαστατο θα ηταν bruteforce, αλλα ηταν και 3 η ωρα οταν το εγραφα.

Δημοσ.

Δε σε πιάνω με τίποτα όμως; Αφού έχεις ζεύγη από συντεταγμένες τότε τι νόημα έχει το να σορτάρεις μόνο τα Χ ή μόνο τα Υ; Έτσι χαλάς τα σημεία που είχες αρχικά. Οι αποστάσεις που λες "του καθενός από τα άλλα" δεν καταλαβαίνω ούτε τι αποστάσεις είναι και πώς προκύπτουν ούτε σε ποιό καθένα αναφέρεσαι.

Δημοσ.

Αν παρω το σημειο 1 στον αξονα των Χ η συνολικη αποσταση του από τα άλλα είναι 2-1 + 3-1+5-1= 7. Ετσι δουλευω για καθε σημειο. Δεν εχει νοημα να ορισουμε γιατι δεν ειναι αποσταση αυτο. Το θέμα είναι ότι λύνει το πρόβλημα που έχω.
@defacer: Δεν χαλάω τις συντατεγμένες που έχω. Τις κρατώ αλλού.

Δημοσ.

Δεν το ζωγραφιζεις καλυτερα; Δεν καταλαβαινω τι εννοεις αποσταση αναμεσα σε δυο σημεια.

 

Ούτε εγώ το έχω  καταλάβει.

 

@Anubis: Σε τι μονάδα μέτρησης υπολογίζεις δηλαδή την απόσταση ενός σημείου από τα υπόλοιπα;

Δημοσ.

Γιατι να τα σορταρεις?

Φτιάξε και μια τριτη στήλη με τις "αποστάσεις" και πάρε τη μικρότερη

 

εννοει ότι αν εχει  2 1 3 5 η αποσταση απο το 2 ειναι  |2-1|+|2-3|+|2-5|=5

Δημοσ.
...

εννοει ότι αν εχει  2 1 3 5 η αποσταση απο το 2 ειναι  |2-1|+|2-3|+|2-5|=5

 

Αυτό είναι η απόσταση του 2 από τι πράγμα; Δλδ από τι πράγμα απέχει 5 μονάδες (τι είδους μονάδες είναι αυτές, δεν ξέρω) το 2;

 

Επίσης το 2 τι είναι. Γιατί σημείο δεν φαίνεται να είναι.

Δημοσ.

ΟΚ, οπότε λες "αποσταση του καθενος απο τα άλλα" και εννοείς "άθροισμα των αποστάσεων της προβολής του σημείου σε κάποιον άξονα από την προβολή καθενός από τα άλλα σημεία στον ίδιο άξονα". Για την οποία δουλειά δε χρειάζεται βέβαια να σορτάρεις σε πρώτη φάση οπότε νομίζω το μόνο που κατάφερες βάζοντας μέσα το sort είναι να μας μπερδέψεις.

 

Τελικά λοιπόν για ποιό λόγο σορτάρεις;

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...