Я работаю над Laravel + Vue и застрял в процессе поиска наименьшего узла в дереве. Это изображение, которое вы увидите ниже, представляет собой структуру. В одном узле должно быть 3 подузла, если он получил четвертый, он, новый узел заполнит наименьшие подузлы ниже ИЗОБРАЖЕНИЕ ЗДЕСЬ
Я уже реализовал для части уровня 3, но я борюсь с тем, что мне делать, если когда-либо новый узел заполнит наименьшие подузлы узлов уровня 4 и уровня 5 до уровня 7?
Кто угодно может поделиться их знания для работы делают эту работу?
вот что я получил до сих пор
getMemberHasLowestMember(data) {
// get the lowest number of members count
let lowest_number_of_members = data.reduce((min, b) => Math.min(min, b.members.length), data[0].members.length)
// get the members who have the lowest number of members
let member_has_low_members = data.filter(member => member.members.length == lowest_number_of_members)
if(member_has_low_members.length > 1) {
// get the random number from length of members_has_low_members
let random_number = Math.floor(Math.random() * Math.floor(member_has_low_members.length))
return member_has_low_members[random_number]
} else {
return member_has_low_members[0]
}
},
В этом случае у меня есть 1 пользовательские данные, и у них есть объект teams
, и в этом объекте он имеет members
, но поскольку объект go глубже, я все еще не знаю, как получить членов команды до уровня 7