Untitled
unknown
kotlin
2 years ago
1.2 kB
11
Indexable
/*
Метод принимает два списка пар: (ключ и значение).
Необходимо реализовать метод который будет возвращать результат пар по аналогии с inner join в SQL.
* a[i].size == 2, b[i].size == 2
Пример:
a = [[1, 2], [2, 5], [4, 7]]
b = [[1, 10], [15, 1], [2, 8]]
join(a, b) => [[1, 2, 10], [2, 5, 8]]
*/
fun join(a: List<IntArray?>?, b: List<IntArray?>?): List<IntArray> {
val map: Map<Integer, Integer>
val MutableList<IntArray> result = mutableListOf()
if (a.size <= b.size) {
map = a.toMap(a[0], a[1])
for(element in b) {
if(map.consistsKey(element[0])) {
result.add(IntArray(element[0], map[element[0]], element[1]))
}
}
} else {
map = b.toMap(a[0], a[1])
for(element in a) {
if(map.consistsKey(element[0])) {
result.add(IntArray(element[0], element[1], map[element[0]]))
}
}
}
return result
}Editor is loading...
Leave a Comment