Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsTsTmClL6 43 of 173 menu
◀ ▶

Задачи на коллекцию Map в Rust. Часть 6

Дана коллекция HashMap с вложенными коллекциями:

let data = HashMap::from([ ("department1", HashMap::from([ ("teamA", vec![1, 2, 3]), ("teamB", vec![4, 5, 6]) ])), ("department2", HashMap::from([ ("teamC", vec![7, 8, 9]), ("teamD", vec![10, 11, 12]) ])) ]);

Найдите команду с максимальной суммой элементов, вернув путь до нее в формате "department/team".

Дана коллекция HashMap:

let transactions = HashMap::from([ ("user1", vec![ HashMap::from([("type", "deposit"), ("amount", 100)]), HashMap::from([("type", "withdraw"), ("amount", 50)]), HashMap::from([("type", "deposit"), ("amount", 200)]) ]), ("user2", vec![ HashMap::from([("type", "deposit"), ("amount", 300)]), HashMap::from([("type", "withdraw"), ("amount", 100)]) ]) ]);

Для каждого пользователя рассчитайте конечный баланс после всех операций.

Дана коллекция HashMap:

let graph = HashMap::from([ ("A", HashMap::from([("B", 5), ("C", 3)])), ("B", HashMap::from([("A", 5), ("D", 2), ("E", 4)])), ("C", HashMap::from([("A", 3), ("F", 7)])), ("D", HashMap::from([("B", 2)])), ("E", HashMap::from([("B", 4), ("F", 1)])), ("F", HashMap::from([("C", 7), ("E", 1)])) ]);

Найдите кратчайший путь от вершины "A" до вершины "F" используя алгоритм Дейкстры.

Дана коллекция HashMap:

let nestedMap = HashMap::from([ ("level1", HashMap::from([ ("level2a", HashMap::from([ ("level3a", vec![1, 2, 3]), ("level3b", vec![4, 5, 6]) ])), ("level2b", HashMap::from([ ("level3c", vec![7, 8, 9]) ])) ])) ]);

Найдите все пути до конечных списков в формате "level1/level2/level3".

Дана коллекция HashMap:

let timeSeries = HashMap::from([ ("sensor1", vec![ HashMap::from([("timestamp", 1000), ("value", 25.3)]), HashMap::from([("timestamp", 2000), ("value", 26.1)]), HashMap::from([("timestamp", 3000), ("value", 24.8)]) ]), ("sensor2", vec![ HashMap::from([("timestamp", 1000), ("value", 30.5)]), HashMap::from([("timestamp", 2000), ("value", 31.2)]), HashMap::from([("timestamp", 3000), ("value", 29.8)]) ]) ]);

Для каждого сенсора найдите среднее значение показаний за все время.

Дана коллекция HashMap:

let hierarchicalData = HashMap::from([ ("company", HashMap::from([ ("departments", vec![ HashMap::from([ ("name", "IT"), ("employees", vec![ HashMap::from([("name", "John"), ("salary", 5000)]), HashMap::from([("name", "Alice"), ("salary", 6000)]) ]) ]), HashMap::from([ ("name", "HR"), ("employees", vec![ HashMap::from([("name", "Bob"), ("salary", 4500)]), HashMap::from([("name", "Charlie"), ("salary", 4800)]) ]) ]) ]) ])) ]);

Найдите департамент с наибольшей средней зарплатой сотрудников.

Дана коллекция HashMap:

let multiDimensional = HashMap::from([ ("matrix", vec![ vec![1, 2, 3], vec![4, 5, 6], vec![7, 8, 9] ]), ("operations", vec!["transpose", "rotate", "invert"]) ]);

Примените все операции из списка "operations" к матрице последовательно.

Дана коллекция HashMap:

let complexStructure = HashMap::from([ ("users", vec![ HashMap::from([ ("id", 1), ("orders", vec![ HashMap::from([("items", vec!["apple", "banana"]), ("total", 15.5)]), HashMap::from([("items", vec!["orange"]), ("total", 8.2)]) ]) ]), HashMap::from([ ("id", 2), ("orders", vec![ HashMap::from([("items", vec!["milk", "bread"]), ("total", 12.3)]) ]) ]) ]) ]);

Для каждого пользователя найдите общую сумму всех заказов.

Дана коллекция HashMap:

let nestedGraph = HashMap::from([ ("graph1", HashMap::from([ ("nodes", vec!["A", "B", "C"]), ("edges", vec![ HashMap::from([("from", "A"), ("to", "B"), ("weight", 5)]), HashMap::from([("from", "B"), ("to", "C"), ("weight", 3)]) ]) ])), ("graph2", HashMap::from([ ("nodes", vec!["X", "Y", "Z"]), ("edges", vec![ HashMap::from([("from", "X"), ("to", "Y"), ("weight", 2)]), HashMap::from([("from", "Y"), ("to", "Z"), ("weight", 4)]) ]) ])) ]);

Для каждого графа найдите общий вес всех ребер.

Дана коллекция HashMap:

let recursiveStructure = HashMap::from([ ("value", 10), ("children", vec![ HashMap::from([ ("value", 20), ("children", vec![ HashMap::from([("value", 30), ("children", vec![])]), HashMap::from([("value", 40), ("children", vec![])]) ]) ]), HashMap::from([ ("value", 50), ("children", vec![ HashMap::from([("value", 60), ("children", vec![])]) ]) ]) ]) ]);

Найдите сумму всех значений value в древовидной структуре.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить