Middle — Senior
Πώς συνδυάζετε λίστες χωρίς να χρησιμοποιείτε joins;
sobes.tech AI
Απάντηση από AI
Για να ενώσετε δύο λίστες χωρίς να χρησιμοποιήσετε joins, μπορείτε απλά να τις συγχωνεύσετε ή να προσθέσετε τα στοιχεία μιας λίστας στην άλλη. Στη Go, αυτό γίνεται με τη χρήση της συνάρτησης append.
Παράδειγμα συγχώνευσης δύο slices:
list1 := []int{1, 2, 3}
list2 := []int{4, 5, 6}
combined := append(list1, list2...)
// το combined τώρα περιέχει [1 2 3 4 5 6]
Εάν θέλετε να συγχωνεύσετε λίστες αφαιρώντας διπλότυπα, μπορείτε να χρησιμοποιήσετε έναν χάρτη για να παρακολουθείτε τα μοναδικά στοιχεία:
func mergeUnique(a, b []int) []int {
m := make(map[int]bool)
var result []int
for _, v := range a {
if !m[v] {
m[v] = true
result = append(result, v)
}
}
for _, v := range b {
if !m[v] {
m[v] = true
result = append(result, v)
}
}
return result
}
Έτσι, η συγχώνευση λιστών χωρίς joins είναι απλώς η προσθήκη στοιχείων και, αν χρειάζεται, η φιλτράρισμα των μοναδικών τιμών.