Ποια είναι η διαφορά μεταξύ RANK() και DENSE_RANK();
Data Engineer
CREATE TABLE orders ( driver_id varchar, city varchar, order_id varchar ); -- Λάβετε τους 10 κορυφαίους οδηγούς ανά αριθμό παραγγελιών σε κάθε πόλη
Πού λειτουργεί καλύτερα η συμπίεση δεδομένων — στην αποθήκευση κατά στήλες ή κατά γραμμές και γιατί;
Πες μου τι ξέρεις για την αποθήκευση δεδομένων κατά στήλες και γραμμές. Πότε και ποιο πρέπει να επιλέξεις και γιατί;
-- Αρχικός πίνακας stretch -- Είναι απαραίτητο να συμπληρωθούν τα NULL με την προηγούμενη τιμή (όχι NULL) ανά id - εκτέλεση συμπλήρωσης προς τα κάτω id | ttime | val ---|-------|----- 1 | 07:30 | NULL 1 | 09:21 | 10 1 | 13:53 | NULL 1 | 16:12 | NULL 2 | 09:42 | 133 2 | 15:20 | NULL 2 | 21:33 | NULL 3 | 08:01 | NULL 3 | 11:41 | 8 3 | 14:23 | NULL 3 | 16:17 | NULL 3 | 19:54 | 2 4 | 13:10 | 312 4 | 14:42 | NULL 4 | 16:31 | 7 4 | 17:44 | NULL id | ttime | val ---|-------|----- 1 | 07:30 | NULL 1 | 09:21 | 10 1 | 13:53 | 10 1 | 16:12 | 10 2 | 09:42 | 133 2 | 15:20 | 133 2 | 21:33 | 133 3 | 08:01 | NULL 3 | 11:41 | 8 3 | 14:23 | 8 3 | 16:17 | 8 3 | 19:54 | 2 4 | 13:10 | 312 4 | 14:42 | 312 4 | 16:31 | 7 4 | 17:44 | 7 -- Ερώτηση SQL για την απόκτηση του επιθυμητού πίνακα SELECT id, ttime, COALESCE(val, LAST_VALUE(val) OVER(PARTITION BY id ORDER BY ttime)) as val FROM stretch
Πόση επιπλέον μνήμη απαιτεί μια λύση με λεξικό, χωρίς να υπολογίζονται τα επιστρεφόμενα δεδομένα;
Πόσο χρόνο θα χρειαστεί η λύση με τη χρήση του ενσωματωμένου sorted; Μπορεί να βρεθεί μια πιο γρήγορη λύση;
Αξιολογήστε την τελική λύση όσον αφορά το χρόνο και τη μνήμη.
Πώς να λύσετε ένα πρόβλημα σε γραμμικό χρόνο O(n) χρησιμοποιώντας ένα λεξικό; Τι πρέπει να αποθηκεύσετε στο λεξικό για να δημιουργήσετε στη συνέχεια μια ταξινομημένη συμβολοσειρά; Πώς να χειριστείτε χαρακτήρες που δεν υπάρχουν στη σειρά;
-- Βρείτε όλους τους επιβάτες που πραγματοποίησαν ταξίδια δύο ή περισσότερων ημερών στη σειρά
Δεδομένης μιας συμβολοσειράς order που καθορίζει τη ζητούμενη σειρά των χαρακτήρων. Απαιτείται να αναδιατάξετε τους χαρακτήρες στη συμβολοσειρά unsorted_str ώστε η σειρά να συμφωνεί με τη συμβολοσειρά order. Και οι δύο συμβολοσειρές αποτελούνται από μικρά γράμματα του αγγλικού αλφαβήτου, όλοι οι χαρακτήρες στο order είναι διαφορετικοί. Η σειρά των χαρακτήρων στο unsorted_str ονομάζεται συνεπής με τη συμβολοσειρά order, αν από το γεγονός ότι ο χαρακτήρας x εμφανίζεται πριν από τον χαρακτήρα y στο order, προκύπτει ότι κάθε εμφάνιση του x στο unsorted_str πρέπει να είναι πριν από κάθε εμφάνιση του y. Επιτρέπονται καταστάσεις όπου στο order δεν υπάρχουν χαρακτήρες από το unsorted_str και το αντίστροφο. Επιστρέψτε οποιαδήποτε επιτρεπτή αναδιάταξη. unsorted_str = "abcd" order = "cba" απάντηση = "dcba" ("cdba", "cbda", "cbad") def CustomSort(unsorted_str: str, order: str) -> str: # κώδικας εδώ
Πώς γίνεται επέκταση προς τα πάνω (γεμίζοντας το NULL με την προηγούμενη μη μηδενική τιμή στην αντίστροφη κατεύθυνση);