marios28 Δημοσ. 18 Νοεμβρίου 2018 Δημοσ. 18 Νοεμβρίου 2018 14 ώρες πριν, k33theod είπε Απ ότι βλέπω ο marios28 κάνει το ίδιο μόνο που στο δεύτερο iteration είναι νομίζω προτιμότερο να διαβάσει το hashmap και όχι το string Πρέπει να διαβαστεί το string, γιατί διαφορετικά δε θα γνωρίζουμε το index του char μέσα στο string. Ο hashmap θα έχει λιγότερα στοιχεία (ζευγάρια χαρακτήρα-συχνότητα επανάληψης) από τo string, αν έχουμε επανάληψη κάποιου χαρακτήρα.
k33theod Δημοσ. 18 Νοεμβρίου 2018 Δημοσ. 18 Νοεμβρίου 2018 (επεξεργασμένο) pmav Σωστός Εγώ το δοκίμασα σε windows σε python 3.6.1 και μου δούλευε με απλό dict. Άλλη εναλλακτική είναι και το OrderedDict. 12 ώρες πριν, marios28 είπε Πρέπει να διαβαστεί το string, γιατί διαφορετικά δε θα γνωρίζουμε το index του char μέσα στο string. Ο hashmap θα έχει λιγότερα στοιχεία (ζευγάρια χαρακτήρα-συχνότητα επανάληψης) από τo string, αν έχουμε επανάληψη κάποιου χαρακτήρα. Όταν στο hashmap βρεις key με value 1 θα κάνεις return το str.indexOf(key). Πιστεύω ότι γίνεται εκτός και εάν το hashmap είναι unordered. Aυτό που λέει ο pmav σε εμένα δηλαδή. Επεξ/σία 18 Νοεμβρίου 2018 από k33theod
marios28 Δημοσ. 19 Νοεμβρίου 2018 Δημοσ. 19 Νοεμβρίου 2018 Ισχύει το ίδιο. Εκτός αν χρησιμοποιηθεί LinkedHashMap. 1
pmav99 Δημοσ. 19 Νοεμβρίου 2018 Δημοσ. 19 Νοεμβρίου 2018 Στις 17/11/2018 στις 12:22 ΜΜ, Asevastos είπε να βελτιώσω τον αλγόριθμο και να τον κάνω καλύτερο από quadratic Λύνεται και με single traversal του string. Δώσε έμφαση σε αυτό: Στις 17/11/2018 στις 2:13 ΠΜ, defacer είπε Δε χρειάζεται κανένας μετρητής. Αν βρεις τον ίδιο χαρακτήρα σε άλλη θέση εκτός του τρέχοντος index, δεν είναι μοναδικός, πάμε στο επόμενο index. Ούτε μετρητές ούτε τίποτα
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα